標籤:
一直用oracle,好久沒有用mysql,今天搭建了一個mysql的web開發環境。竟然拋出這個異常:
Unknown character set: ‘utf8mb4‘org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown character set: ‘utf8mb4‘at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:382)at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:456)at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:464)at org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:472)at org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:477)at org.springframework.jdbc.core.JdbcTemplate.queryForInt(JdbcTemplate.java:486)
記得建立資料的時候字元集設定的是utf-8:
CREATE DATABASE service DEFAULT CHARACTER SET utf8;
網上查了各種解決辦法:
最後是由於Mysql驅動版本引起的:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.35</version>
</dependency>
換成
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.18</version>
</dependency>
結果不行,
換成下面的maven依賴問題解決,
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
搞死人...
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorEx