2016-04-30 63 views
2

我已經克隆的PetClinic項目和進口它的IntelliJ 14查看HSQLDB內容的IntelliJ 14

我的問題是,當我使用本地主機上的應用程序如何可以我看到HSQLDB數據庫的內容這在寵物診所應用程序中默認使用? 我第一次嘗試是:

  • 在數據庫視圖去從的IntelliJ

  • 創建網址等於存儲器內的新數據庫:JDBC:HSQLDB:MEM:的PetClinic

當我測試連接是好的,即使應用程序服務器沒有啓動,這是我認爲是weard

當我啓動應用程序./mvnw tomcat7:在數據庫視圖中運行我只能得到模式:PUBLIC.PUBLIC,根本沒有表。

我的問題是如何在intellj中配置數據庫連接,以查看petclinic應用程序中使用的hsqldb的內容?

謝謝你。

要添加說明: 如果您看一看寵物診所代碼[link] 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> 

然後選擇公共模式,你會看到所有的表:=)

0

本地主機服務器的URL通常爲jdbc:hsqldb:hsql://localhost/,或者可能在末尾附加petclinic。 但是,在啓動Tomcat並使用上述URL進行連接之前,您需要運行HSQLDB服務器,而不是使用jdbc:hsqldb:mem:petclinic URL。