【发布时间】:2011-02-15 06:52:09
【问题描述】:
我正在使用 MySQL 5.1.45、Tomcat 5.5.28 和 Hibernate 3 编写网络应用
当我尝试保存包含非拉丁字符(例如Упячка)的字符串时发生错误:
1589 [main] WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 1366, SQLState: HY000
1589 [main] ERROR org.hibernate.util.JDBCExceptionReporter - Incorrect string value: '\xD0\xA3\xD0\xBF\xD1\x8F...' for column 'name' at row 1
休眠连接设置
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost/E2012?characterEncoding=UTF8&useUnicode=true</property>
<property name="connection.username">***</property>
<property name="connection.password">***</property>
<property name="hibernate.connection.charSet">UTF8</property>
MySQL 配置 My.cnf
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
即使查询集名称 utf-8 也无法解决问题
感谢您的帮助!
【问题讨论】:
-
在数据库中,触发
SHOW VARIABLES LIKE 'collation%'并将结果粘贴到此处。 -
collation_connection utf8_general_ci collation_database utf8_general_ci collation_server utf8_general_ci
标签: java mysql unicode encoding