我希望创建一个内存中的数据库,其中填充了用于快速测试的测试数据,因此我在我的配置文件中声明了这个bean,但是我也希望这样设置这个属性:
MODE=MySQL
DB_CLOSE_ON_EXIT=FALSE但我不知道该在哪里做
@Bean
public DataSource dataSource(){
return
(new EmbeddedDatabaseBuilder())
.setType(EmbeddedDatabaseType.H2) //.H2
.addScript("classpath:db/H2.schema.sql")
.addScript("classpath:db/H2.data.sql")
.build();
}发布于 2017-04-24 19:03:18
尝尝这个
@Bean
public DataSource dataSource(){
return
new EmbeddedDatabaseBuilder()
.setType(EmbeddedDatabaseType.H2)
.setName("testDB;DB_CLOSE_ON_EXIT=FALSE;MODE=MySQL")
.addScript("classpath:db/H2.schema.sql")
.addScript("classpath:db/H2.data.sql")
.build();
}发布于 2017-04-24 19:04:53
您可以尝试使用EmbeddedDatabaseBuilder.setName()
@Bean
public DataSource dataSource() {
return
new EmbeddedDatabaseBuilder()
.setName("testdb;MODE=MySQL;DB_CLOSE_ON_EXIT=false")
.setType(EmbeddedDatabaseType.H2) //.H2
.addScript("classpath:db/H2.schema.sql")
.addScript("classpath:db/H2.data.sql")
.build();
}注:我本人没有试过,但在this的答案上找到了线索。
发布于 2017-04-24 18:53:56
另一种方法是使用属性连接DataSources。这样,您就可以设置JDBC,它可以包含其他属性。
https://stackoverflow.com/questions/43595395
复制相似问题