2016-12-23 18 views
0

データベースにアクセスしてカスタム実行可能ファイルまたはクエリを実行する方法は?いくつかの検索の後、私はsessionFactoryを使うことができることが判明しましたが、データハンドラとして休止状態にしなければなりません。アプリケーションの複雑な部分に悪影響や動作があっても、または結合データをフェッチしてそれらを処理する方法...私は春のデフォルトと一緒に行きたい...また、休止状態が好まれない場合、休止状態が遅いことを意味する可能性があります。私はJpaRepositoryを使用しているときの横にあるデータベースの既存のセッションにアクセスし、その上でカスタムコマンドを実行したいと思っています。だから私は他のセッションやロックを妨げない。CUSTOM DDL DMLを実行する方法実行時にSpringブート時にHibernateを強制実行せずに

ところで、私は今のHSQLDBを使用しています...

答えて

1

春JDBCはDataSource初期化機能を備えています。 Springブートはデフォルトでそれを有効にし、標準の場所schema.sqldata.sql(クラスパスのルートにある)からSQLをロードします。さらに、Spring Bootはschema-${platform}.sqldata-${platform}.sqlファイル(存在する場合)をロードします。プラットフォームはspring.datasource.platformの値です。データベースのベンダー名(hsqldb、h2、oracle、mysql、postgresqlなど)に設定することができます。spring.datasource.schemaspring.datasource.dataを設定してスクリプトの場所を変更することができ、spring.datasource.initialize=falseの場合はどちらの場所も処理されません。

もっとhere

クラスパスあなたの中に休止状態のjarファイルを置く場合は、Springの自動設定が引き継ぎ、あなたがしたいユーザーを休止状態だと思います。だからあなたのクラスパスにそれらの瓶がないことを確認してください。

+0

カスタムスクリプトを実行するとどうなりますか?私は起動時ではなく実行時に実行したいのですが...どのコンポーネントを有線で接続し、どのスクリプトを実行するべきか...? – deadManN

+0

データソースを直接使用し、スクリプトファイルを読み込んでクエリを実行する必要があります。あまりにも厳しくはありません。または、既存のコードを活用できるかどうかを確認するには、Springをデバッグする必要があります。しかし、あなたはおそらくファイルからステートメントを読んでほしいときにスクリプトを実行できますし、データソースに対して直接スクリプトを実行する方法についてはたくさんの例があります。 – Ulises

+0

データソースは直接接続します、および作成方法ステートメント?私はデータソースを直接使用していて、私は思っていたことを意味していましたが、春のフレームワークセッションが実行されている/オンラインであれば何の問題も生じませんでしたか? – deadManN

関連する問題