今天拿别人的项目部署调试,出现如下问题
org.hibernate.exception.SQLGrammarException: Cannot open connection
...
root cause
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown character set: 'utf8mb4'
google吧,有说创建数据库就要指定字符集的
CREATE DATABASE `test1` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
也有说hibernate加编码的
<property name="connection.url"> jdbc:mysql://localhost:3306/ssh_test</property>
或者
<property name="connection.characterEncoding">UTF8</property>
也有说mysql6 要新的mysql-connector-j-5.1.13版本才行的, 这都用到5.1.22都不行
最后把dialect由 org.hibernate.dialect.MySQLDialect 改成 org.hibernate.dialect.MySQL5InnoDBDialect 就ok
解决MySQL字符集问题导致的Hibernate部署调试错误

本文详细介绍了在使用Hibernate进行项目部署调试时遇到的MySQL字符集问题,包括解决步骤和配置建议,最终通过修改方言类实现问题解决。
761

被折叠的 条评论
为什么被折叠?



