hibernate + mysql 中文字符(utf-8)无法写入数据库
搜索了很多网上的解决方法,包括设置了mysql的默认encoding=utf8,设置了jdbc:mysql://localhost/project?useUnicode=...
搜索了很多网上的解决方法,包括设置了mysql的默认encoding=utf8, 设置了jdbc:mysql://localhost/project?useUnicode=true&characterEncoding=UTF-8
但是每次用hibernate存储数据的时候,都会遇到如下错误,
ERROR JDBCExceptionReporter: Incorrect String value: '\xE5\xA5\xBD'
这个字符串是某个中文字的代码。 而且我也把数据库对应的表格默认编码设置成了utf8。
比如说,如下的代码
@Entity
class Data {
@Id @GeneratedValue
private long id;
String name;
}
Data d = new Data();
d.setName("好");
...
session.save(d); //使用hibernate存储对象
然后就出了如上的错误 展开
但是每次用hibernate存储数据的时候,都会遇到如下错误,
ERROR JDBCExceptionReporter: Incorrect String value: '\xE5\xA5\xBD'
这个字符串是某个中文字的代码。 而且我也把数据库对应的表格默认编码设置成了utf8。
比如说,如下的代码
@Entity
class Data {
@Id @GeneratedValue
private long id;
String name;
}
Data d = new Data();
d.setName("好");
...
session.save(d); //使用hibernate存储对象
然后就出了如上的错误 展开
2个回答
展开全部
把mysql目录下的my.ini中的default-character-set=*****和character-set-server=*****的*****都替换成latin1就可以完美解决。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把mysql 里面默认的编码 改下
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询