我的Spring数据库(H2)不存在

时间:2017-08-04 20:22:34

标签: spring h2 embedded-database

这是我的配置文件

@Configuration
@ComponentScan
public class Config {

@Bean
public DataSource datasource() {
    return new EmbeddedDatabaseBuilder().setName("MyDB").setType(EmbeddedDatabaseType.H2).addScript("schema.sql").build();
}

@Bean
public JdbcOperations jdbcTemplate(DataSource ds) {
    return new JdbcTemplate(ds);        
}
}

运行程序后,我找不到" MyDB"数据库中。

我知道它是一个内存数据库。如何使其嵌入,以便当我关闭程序时,数据库上的数据仍然存在,我可以找到" MyDB"在项目文件夹上。

1 个答案:

答案 0 :(得分:0)

@Bean
public DataSource h2DataSource() {
    DriverManagerDataSource dataSource = new DriverManagerDataSource();
    dataSource.setDriverClassName(driver);
    dataSource.setUrl(url);
    dataSource.setUsername(username);
    dataSource.setPassword(password);
    return dataSource;
}

driver: org.h2.Driver
url: jdbc:h2:file:${java.io.tmpdir}/database/db_name;AUTO_SERVER=TRUE
username: user
password: pass