我将MySQL连接器和数据库详细信息构建到应用程序中,并且在Tomcat中运行时仍然无法连接到MySQL。我的应用程序完全是开源的,所有源代码都在网上:https://github.com/clickcell/AutomationStatisticsPortal
与我的存储库不同的application.properties文件是:
spring.datasource.url=jdbc:mysql://localhost/springboot
spring.datasource.username=newuser
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
我已尝试设置MySQL 5.5服务器以匹配application.properties
每次症状如下:
Web应用程序正在运行,但没有数据库连接,也没有显示数据。
我使用Tomcat8和MySQL 5.5。我已经启用查询日志并使用tail -f
监视它,当我直接向他们在日志中显示的服务器运行查询时,但是当我在tomcat管理器中重新启动我的应用程序时,该日志中没有任何内容显示。
在tomcat日志中,我得到以下内容:
21-Dec-2016 10:19:16.693 INFO [http-nio-8080-exec-6] org.apache.catalina.core.StandardContext.reload Reloading Context with name [/AutomationStatisticsPortal] has started
21-Dec-2016 10:19:17.339 WARNING [http-nio-8080-exec-6] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [AutomationStatisticsPortal] registered the JDBC driver [org.h2.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
21-Dec-2016 10:19:19.026 INFO [http-nio-8080-exec-6] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
21-Dec-2016 10:19:26.839 INFO [http-nio-8080-exec-6] org.apache.catalina.core.StandardContext.reload Reloading Context with name [/AutomationStatisticsPortal] is completed
看起来它正在注册错误的数据库驱动程序,但我不知道为什么给出我的配置。
答案 0 :(得分:1)
使用H2时会生成您显示的日志。
我克隆了您的存储库并在本地进行了测试,当我使用MySQL参数更新src/main/resources/application.properties
时,它可以工作。
你应该删除root中的另一个,这是不明确的。
您还可以使用此application.properties
文件替换src/main/resources
中的application.yml
文件:
spring:
datasource:
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://localhost/springboot
username: newuser
password: password
jpa:
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
database: MYSQL
show-sql: true
在这种情况下,添加Hikary依赖项,或使用其他数据源类型。