java连接高版本mysql错误init datasource error & Error building SqlSession

错误信息:

3月 26, 2019 8:18:00 下午 com.alibaba.druid.pool.DruidDataSource error
严重: init datasource error
java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
由于高版本的mysql的影响,url的设置要跟低版本不同

url=jdbc:mysql://127.0.0.1:3306/(数据库名)?serverTimezone=UTC&characterEncoding=utf-8&useSSL=false

在正常的后面加上?serverTimezone=UTC&characterEncoding=utf-8&useSSL=false即可。

 

如果是要把配置信息放在XML中的话,会出现这样的错误:

org.apache.ibatis.exceptions.PersistenceException: 
### Error building SqlSession.
### Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance.  Cause: org.xml.sax.SAXParseException; lineNumber: 23; columnNumber: 121; 对实体 "characterEncoding" 的引用必须以 ';' 分隔符结尾。

这是因为,在XML中'&'要进行转义,在&后面加amp;

jdbc:mysql://127.0.0.1:3306/(数据库名)?serverTimezone=UTC&characterEncoding=utf-8&useSSL=false

 

你可能感兴趣的:(mysql,开发问题)