Jak naplnit HSQL testovací databázi po spuštění?

publikováno: 27.4.2013

Po vytvoření testovací databáze HSQLDB ve Springu je možné vykonat vlastní SQL skript:

 <jdbc:embedded-database id="dataSource">
<jdbc:script location="classpath:init-test-db.sql" />
</jdbc:embedded-database>

Tento skript se spustí ještě před vytvořením tabulek pomocí Hibernate hbm2ddl.

 

Po vytvoření tabulek automatickým způsobem pomocí Hibernate je možné vykonat vlastní SQL skript:

 <bean id="entityManagerFactory" 
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
</bean>
</property>
<property name="jpaProperties">
<props>
<prop key="hibernate.hbm2ddl.auto">create</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.import_files">import-hib-db.sql</prop>
</props>
</property>
</bean>

Takový skript používám k naplnění testovací databáze.

Reference

Skoleni bylo kazdopadne prinosne, i kdyz ve Springu uz chvilku delam, dodalo mi to kontext a hlubsi porozumeni. Libil se mi i prehled dalsich frameworku, jejich prakticke vyuziti a ze

Daniela

Školení bylo profesionální jako vždy (přesto v přátelském a otevřeném duchu). Je vidět, že Jirka je v dané problematice jako ryba ve vodě a neustále se posouvá kupředu, k čemuž

Aleš

Vyborna forma skoleni - vedeno lektorem podle dane linie se zacilenim na konkretni problematiku, nicmene s moznosti kdykoliv odbocit co vic upresnit problematiku na zaklade dotazu. Velmi uzitecne zejmena v

Petr


Novinky

5.4.2018: Jak hodně artifactů v Mavenu je připravených na použití v module path?
Od Java 9 je možné místo class path používat module path. K tomu je ale důležité, aby každý artifact který používáte měl definované jméno

26.3.2018: Java 10 je tady, Java 9 je EOL
Ještě jsem všude nepřešel na Java 9 a devítka už je EOL (End of Life).

20.3.2018: Přechod na Spring Boot 2
Postupně jsem všude přešel na Spring Boot 2 a mám k tomu pár poznatků, o které bych se rád podělil.