2016-04-30 14 views
2

ich habe petclinic Projekt kloniert und importiert sie in intellij 14.Ansicht hsqldb Inhalt petclinic Anwendung von intellij 14

Meine Frage ist, wenn ich die Anwendung verwende auf localhost Wie kann ich sehen, den Inhalt der Datenbank hsqldb Welches wird standardmäßig in der Petclinic-Anwendung verwendet? Mein erster Versuch war:

  • gehen in der Datenbank Ansicht von IntelliJ

  • eine im Speicher neue Datenbank mit URL erstellen gleich: jdbc: hsqldb: mem: petclinic

Wenn ich die Verbindung testen, ist es in Ordnung, auch wenn der Anwendungsserver nicht gestartet ist, was ich glaube

Wenn ich die Anwendung ./mvnw starte tomcat7: lauf in der Datenbank-Ansicht Ich bekomme nur Schemata: PUBLIC.PUBLIC mit überhaupt keiner Tabelle.

Meine Frage ist so, wie die Datenbankverbindung innerhalb von intellj konfigurieren, um den Inhalt der hsqldb in der Anwendung petclinic verwendet zu sehen?

Vielen Dank.

Klärung hinzu: Wenn Sie einen Blick auf die petclinic Code [link] https://github.com/spring-projects/spring-petclinic Sie, dass hsqldb sehen bereits konfiguriert ist und zu Beginn der Anwendung gestartet. Und dass die Konfiguration

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

ist ich denke, ich müsste die gleiche hsqldb als die von petclinic Code gestartet wieder zu verwenden, aber ich weiß nicht, wie dies zu erreichen, von IntelliJ, sobald die Anwendung lokal gestartet wird. Schätze deine Hilfe.

Antwort

0

Nun meine eigene Frage zu beantworten, ist es das, was zu tun ist:

eine Feder Bohne Instantiate kurz nach der Erstellung der Datenquelle Bohne und dann die Swing-Tool hsql Datenbankmanager starten diese einfachen Codezeilen hinzu:

<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> 

dann das öffentliche Schema wählen Sie alle Tabellen sehen: =)

0

Die URL für den Server localhost ist in der Regel jdbc:hsqldb:hsql://localhost/ oder es kann petclinic am Ende angehängt werden. Sie müssen jedoch einen HSQLDB-Server ausführen, bevor Sie Tomcat starten, und anstelle der jdbc:hsqldb:mem:petclinic-URL die obige URL zum Herstellen der Verbindung verwenden.