一直用oracle,很久没有用mysql,今天搭建了一个mysql的web开发环境。居然抛出这个异常:java
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:mysql
CREATE DATABASE service DEFAULT CHARACTER SET utf8;
网上查了各类解决办法:web
最后是因为Mysql驱动版本引发的:spring
<dependency>sql
<groupId>mysql</groupId>oracle
<artifactId>mysql-connector-java</artifactId>maven
<version>5.1.35</version>code
</dependency>orm
换成utf-8
<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>
搞死人...