Spring實戰中的連接數據庫代碼
@Configuration
public class DataConfig {
@Bean
public DataSource dataSource() {
return new EmbeddedDatabaseBuilder()
.setType(EmbeddedDatabaseType.H2)
.addScript("schema.sql")
.build();
}
@Bean
public JdbcOperations jdbcTemplate(DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
}
想通過web console訪問這個H2數據庫
1、
public class SpitterWebInitializer extends AbstractAnnotationConfigDispatcherServletInitializer中添加:
public void onStartup(ServletContext servletContext)
throws ServletException {
super.onStartup(servletContext);
ServletRegistration.Dynamic servlet = servletContext
.addServlet("h2-console", new WebServlet());
servlet.setLoadOnStartup(2);
servlet.addMapping("/console/*");
}
2、打開http://localhost:8080/console訪問jdbc:h2:mem:testdb
奇怪的是,直接通過idea的數據庫工具連接數據庫URL無法連上正確的數據庫
參考:
https://sanaulla.info/2017/11/19/configure-embedded-h2-console-with-spring-mvc-application/