Maven と Spring の両方のコンテキストから同じ組み込みデータベースを使用したいと考えています。Maven Liquibase プラグインを使用して、db スキーマを作成し、データを入力します。Spring を介して、データベースを操作します。また、Intellij IDEA IDE 経由でデータベースに接続する方法も必要です。
Spring 3 では、以下を使用して組み込みデータベースを構成する機会があります。
<jdbc:embedded-database id="datasource" type="HSQL"/>
スキーマを作成し、Maven プラグインを介してデータベースにデータを入力するには、次のように構成する必要があります。
<plugin>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-maven-plugin</artifactId>
<version>2.0.5</version>
<configuration>
<propertyFile>src/main/resources/db/config/${envProfile}-config.properties</propertyFile>
<changeLogFile>src/main/resources/db/changelog/db.changelog-master.xml</changeLogFile>
</configuration>
</plugin>
この場合、プロパティ ファイルには次のプロパティがあります。
driver: org.hsqldb.jdbcDriver
#HSQLDB Embedded in file
url: jdbc:hsqldb:file:src/main/resources/db/hsqldb/dataFile
最初の質問。Spring と Maven の両方のコンテキストを使用して同じデータベースを使用するにはどうすればよいですか? 解決策として、Spring でデータベースを通常の dataSource Bean として構成し、プロパティ ファイルから構成オプションを渡します。しかし、Spring 3 の機能を正確に使用したい - 。Spring コンテキストで接続できれば、Maven プラグイン経由で接続できます。どうすればいいですか?問題を解決することなく、dataSourse を通常の Bean として構成することがどこでも推奨されるのはなぜですか? Spring に新機能が追加されたのに、Spring コンテキスト内からしか使用できず、jdbc ベースのデータベース ビジュアル ツールからデータベースに接続できないのはなぜですか?
PS: 組み込み HSQL データベースはオールインメモリ (オールインファイルかもしれないと思っていました) で、インプロセスのようです。そのため、スキーマを作成して 1 つのプロセスで入力する方法はありません。それを終わらせて。次に、別のプロセス内から接続を試みます。私が間違っている場合は、私を修正してください。