Java+SSM框架+mysql8连接数据库的一些坑

缘起

昨晚导入一个ssm框架的项目,访问请求的时候总跟我提无法创建数据库连接的问题,这台新电脑刚刚装系统不久,赶了个新潮,装了个mysql8

错误信息

Type Exception Report

Message Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:981)
    org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:860)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
    org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:845)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
.......

问题定位


image.png

那就是连不上数据库咯
网上找了好多解决方案,不怎么奏效
后来终于知道是MySQL8的一些特性的问题
首先更改下面这玩意


再去更改连接驱动器的版本

        
            mysql
            mysql-connector-java
            8.0.11
            runtime
        

改动连接url的配置为

useSSL=false

再跑!


Java+SSM框架+mysql8连接数据库的一些坑_第1张图片
image.png

回去看问题,划拉划拉到最后发现了bug


Java+SSM框架+mysql8连接数据库的一些坑_第2张图片
image.png

时区设置的不对
改动如下:
serverTimezone=UTC

再跑


Java+SSM框架+mysql8连接数据库的一些坑_第3张图片
image.png

果然,成功运行
附上完整的源配置

    
    
        
        
        
        
        
    

另外就是在pom里面改动数据库驱动的版本,这个上面有


Java+SSM框架+mysql8连接数据库的一些坑_第4张图片
image.png

你可能感兴趣的:(Java+SSM框架+mysql8连接数据库的一些坑)