2016-09-08 56 views
2

我正在开发一个项目,我需要迁移数据库并在开发环境的文件上使用H2数据库。弹簧启动+ H2 Db到文件+/h2-console

我加飞路dependendy到我的春节启动(1.4.0.RELEASE)Web应用程序的POM:

<dependency> 
     <groupId>org.flywaydb</groupId> 
     <artifactId>flyway-core</artifactId> 
    </dependency> 

然后我配置DB和迁飞路线上application.properties:

spring.h2.console.enabled=true 
spring.h2.console.path=/h2-console 
spring.datasource.url=jdbc:h2:file:./db/pippo.db; 
spring.datasource.username=pippo 
spring.datasource.password=pluto 


flyway.enabled=true 
flyway.url=jdbc:h2:file:./db/pippo.db 
flyway.user=pippo 
flyway.password=pluto 
flyway.locations=classpath:db/migration 

然后,如果我启动应用程序它正确地创建数据库文件到./db/pippo.db ...所以我想这一切都会正常工作,但是当我在我的浏览器上写http://localhost:8081/h2-console我收到404响应。 我的配置有什么问题?

谢谢大家

+0

你确定你的服务器上的端口8081上运行?另外,你会得到什么日志输出?特别是,你是否得到类似'Tomcat初始化的端口:8081(http)'?如果控制台启动,应该显示类似'映射servlet:'webServlet'到[/ h2-console/*]'。 –

+0

谢谢@HalleKnast,但我有: ** server.port = 8081 ** **我的application.properties ** 日志说明:** Jetty在端口8081(http/1.1)上启动, ** 像你说的我有 **映射servlet:'webServlet'到[/ h2-console/*] ** –

+0

好的。我对flyway一无所知,但我也不认为它是问题所在。你在启动时或输入'http:// localhost:8081/h2-console'后是否会遇到异常或警告/错误日志?如果你可以发布你的完整日志,我会试着去看看它。 –

回答

1

请确保您有H2的依赖始终范围“编译”,范围“运行”等,将导致H2-控制台故障。而你要确保你已经加入一个Servlet映射“/ H2控制台/ *”

<dependency> 
    <groupId>com.h2database</groupId> 
    <artifactId>h2</artifactId> 
</dependency> 
+2

谢谢你们。我解决了这个问题,因为我已经在application.properties中添加了基本休息配置,并且我没有想到/ h2-console会在这个路径下。再次感谢您 –