今天在开发的时候遇见了下面这个问题:
无法与数据库服务器连接,明明之前都可以,后来在网上找了资料,发现另外一个同样的异常情况(产生原因不一样):
这俩问题可以用同一个方法解决,原因说是MySQL的驱动发生了更新,之前的链接方式需要发生改变:
之前:jdbc:mysql://localhost:3306/tree?useUnicode=true&characterEncoding=utf-8
现在:jdbc:mysql://localhost:3306/tree?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT
记得驱动名也要改:
Class.forName("com.mysql.cj.jdbc.Driver");
然后就可以解决啦!
java.sql.SQLSyntaxErrorException
这个一般都是语法错误,比如哪里多加了什么或者哪里少了一些什么:
但是有些多余部分编译器是不给显示的,很隐蔽,如上图中我就是看了很久才发现原来是在我的动态SQL中多写了一个尖括号,所以才会在上图中的set后面出现一个多余的尖括号,一开始我还以为是Mybatis的日志格式呢…要细心呀!