2017-04-22 8 views
0

は私がH2スキーマでテーブルを見つけることができない/ SpringブートアプリケーションがどのH2スキーマで動作しているかを検証するにはどうすればよいですか?

が達人以外のH2のための任意の設定を持っていなかった春のブートアプリを実行している

私はのために作成されることになったテーブルを参照することができH2コンソールに接続しています2つのエンティティ

iは、JDBCのURLに接続:JDBC:H2:MEM:(デフォルトことになっている)TESTDB

はH2が現在どのようなスキーマを実行していることを確認する方法はあります/またはをH2用のいくつかのログファイル?私はH2は、ログイン時に自分自身を初期化しますが、デモは、私は、これらはそのような場合は必ず取ら正確な手順だった、そうではない見ていたことをどこかで読ん

spring.h2.console.enabled=true 
spring.h2.console.path=/h2 

:私はこれを持って私のapplication.propertiesで

これら

がH @コンソールで設定されている:

enter image description here

答えて

1

私は実際にすべての

に沿って、私は私が右のスキーマをして見ていないと思った理由は、右のスキーマを見た - 私が見ることが予想されるJPAエンティティを、ありませんでした。

私は、これは私が正しくJPAエンティティの

をパッケージに名前を付けていなかったので、私は(写真を参照)、「ドメイン」という名前を付けたことがわかった:

enter image description here

私が持っている必要があります見ることができるようにそれをcom.example.domainの名前:

enter image description here

これは - SpringBoot主なクラスを持つパッケージの下に、 "Configure"という部分があるので、メインクラスが置かれているパッケージの名前を "ドメイン"の前に付けなければなりませんでした。com.example

1

あなたが明示的に作成し、以下のように設定してH2に特定のスキーマに接続するために、春のブートを指示することができます。

spring.datasource.url=jdbc:h2:~/test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE 
spring.datasource.driverClassName=org.h2.Driver 
spring.datasource.username=sa 
spring.datasource.password=sa 

これは、ファイルモードでh2に名前テストデータベースのデータソースを作成します。あなたのホームフォルダには、データベースのデータファイルとなるtest.dbというファイルがあります。

DB_CLOSE_ON_EXITプロパティは、再起動するたびにデータベースを再作成することを決定します。

+0

ありがとう、私はこの問題を見つけました(実体を見ていない)同じ結果でこれを試しました – Dror

関連する問題