2016-04-30 16 views
2

のIntelliJ私はpetclinicプロジェクトをクローン化しているとのIntelliJでそれをインポート14表示HSQLDBの内容は、14

私の質問ですが、私は、ローカルホスト上のアプリケーションを使用していたときにどのように私は、HSQLDBデータベースの内容を見ることができますpetclinicアプリケーションではデフォルトで使用されていますか? 私の最初の試みはした:

  • のIntelliJからデータベースビューに行くと等しいURLを持つメモリ、新しいデータベースで作成します。jdbc:HSQLDB:MEM:petclinic

私は接続をテストするとき、アプリケーションサーバが起動していなくても、これは正常だと思います。

アプリケーションを起動すると./mvnw tomcat7:データベースビューで実行する私はスキーマを取得するだけです:PUBLIC.PUBLICはテーブルをまったく持っていません。

私の質問は、petclinicアプリケーションで使用されるhsqldbの内容を知るためにintellj内でデータベース接続を設定する方法です。

ありがとう。

説明を追加する: petclinicコード[リンク] https://github.com/spring-projects/spring-petclinicを見ると、hsqldbが既に構成されており、アプリケーションの開始時に起動されていることがわかります。そして、設定が

jdbc.driverClassName=org.hsqldb.jdbcDriver   
jdbc.url=jdbc:hsqldb:mem:petclinic 
jdbc.username=sa 
jdbc.password= 

であることを、私は私がpetclinicコードによって開始されたものよりも、同じHSQLDBを再利用する必要があるだろうと思いますが、私は、アプリケーションがローカルに開始されるとのIntelliJからこれを達成する方法がわかりません。あなたの助けに感謝。

答えて

0

はまあ自分の質問に答えるために、これは何をすべきかです:

だけのデータソースBeanの作成後のSpring Beanをインスタンス化し、コードのこれらのシンプルなラインを追加するスイングツールHSQLデータベースマネージャを起動します。

=)

<bean depends-on="dataSource" class="org.springframework.beans.factory.config.MethodInvokingBean"> 
    <property name="targetClass" value="org.hsqldb.util.DatabaseManagerSwing" /> 
    <property name="targetMethod" value="main" /> 
    <property name="arguments"> 
     <list> 
      <value>--url</value> 
      <value>jdbc:hsqldb:mem:petclinic</value> 
      <value>--user</value> 
      <value>sa</value> 
      <value>--password</value> 
      <value></value> 
     </list> 
    </property> 
</bean> 

その後、あなたはすべてのテーブルが表示されますPUBLICスキーマを選択

0

localhostサーバーのURLは、通常jdbc:hsqldb:hsql://localhost/です。最後に末尾にpetclinicが追加されている可能性があります。 しかし、Tomcatを起動する前にHSQLDBサーバを実行し、URLにjdbc:hsqldb:mem:petclinicの代わりに上記のURLを使用して接続する必要があります。

関連する問題