我有春天XML,它使我使用下面的配置來啓動服務器模式H2數據庫:安裝H2
<beans profile="test-h2">
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="org.h2.Driver"/>
<property name="url" value="jdbc:h2:target/h2/pps;AUTO_SERVER=TRUE"/>
<property name="username" value="sa"/>
<property name="password" value=""/>
</bean>
<bean id="entityManagerFactory" parent="entityManagerFactoryCommonParent">
<property name="jpaProperties">
<props>
<prop key="hibernate.hbm2ddl.auto">create-drop</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
</bean>
我想轉換爲基於Java的配置。我在這裏似乎有一個帖子:Start and setup in-memory DB using Spring問有點相同的問題,我已經看過http://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/jdbc.html#jdbc-embedded-database-support嵌入式數據庫,但它沒有說如何將H2模式設置爲服務器模式。它僅以「mem」模式啓動服務器。
我有以下代碼:
EmbeddedDatabaseBuilder builder = new EmbeddedDatabaseBuilder();
builder.setType(EmbeddedDatabaseType.H2);
builder.setName(DATABASE_NAME);
builder.addScript(H2_SCHEMA);
builder.addScript(H2_TEST);
return builder.build();
也許使用EmbeddedDatabaseBuilder(資源加載)
可能會奏效。有沒有人有一些示例代碼?
截至目前 - 這是完整的矯枉過正。同樣的事情可以通過幾行完成。 https://springframework.guru/using-the-h2-database-console-in-spring-boot-with-spring-security/我不以任何方式與作者有關 - 但他的指示肯定對我有用。 –