我有一个基本的 SpringBoot 应用程序,嵌入式 Tomcat,Thymeleaf 模板引擎。我创建了这个 bean 来访问控制台:
@Bean
public ServletRegistrationBean h2ConsoleServletRegistration() {
ServletRegistrationBean bean = new ServletRegistrationBean(new WebServlet());
bean.addUrlMappings("/console/*");
return bean;
}
我访问控制台:http://localhost:8080/appContext/console/login.do?jsessionid=f3585792a9bf1f0cf1a0b6a09dcefe1a
我的bean注释如下:@Entity
@Table(name="t_user")
public class User implements Serializable, UserDetails {
..
}
我的应用程序属性:# Spring Data JPA properties
spring.datasource.url=jdbc:h2:mem:testdb;MODE=MySQL;DB_CLOSE_ON_EXIT=FALSE
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
hibernate.dialect=org.hibernate.dialect.H2Dialect
但我没有看到 JPA 创建的任何表:最佳答案
删除您在属性文件中的所有内容。你提到的所有这些都是默认的。一旦 Spring-boot 在你的 pom 中识别出 h2 依赖项,它就会以任何方式配置它。而且你也不需要那个 ServletRegistration
bean 角,扁 bean 。删除它。把它放在你的属性文件中spring.h2.console.enabled=true
.
默认情况下,可以在 http://localhost:8080/h2-console
上访问控制台, 默认路径为 h2-console
.您可以使用 spring.h2.console.path
配置它属性(property)。
关于Spring Boot 访问 H2 控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43952259/