今天用spring+hibernate进行中文插入时出现乱码问题,通过查资料和自己反复测试终于解决了.
总结了两种方法:
1、使用gb2312编码,变更mysql的数据库编码字符集。cmd模式下用mysql --default-character-set=gb2312 -u root -p进入,然后再每个建表语句后增加default character set gb2312;
重新建立数据表。
值得注意的地方是:applicationContext.xml中的数据库连接必须设置为<property name="url"><value>jdbc:mysql://localhost/struts?useUnicode=true&characterEncoding=gb2312</value></property>,这样插入的才是正常的中文,否则就是乱码。
2、在进行数据保存之前进行gb2312到iso8859-1编码的转换,applicationContext.xml中的数据库连接必须设置为<property name="url"><value>jdbc:mysql://localhost/struts</value></property>,这样插入的才是正常的中文,否则就是乱码。
它们相同的地方是在用jsp进行中文内容填加时,都要进行gb2312到iso8859-1编码的转换:
| String name; name=trans(request.getParameter("name")); String trans(String chi) { String result = null; byte temp []; try { temp=chi.getBytes("iso-8859-1"); result = new String(temp); } catch(java.io.UnsupportedEncodingException e) { System.out.println (e.toString()); } return result; } String trans(Object chi) { return trans(chi.toString()); } |
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- 数字化校园网解决方案 (5616篇文章)
- 大型实用解决方案专题 (5138篇文章)
- 应用解决方案 (5138篇文章)
- 中小型应用解决方案 (5138篇文章)
- 多媒体应用解决方案 (5897篇文章)
- 行业解决方案 (5138篇文章)
- 行业解决方案 (5138篇文章)
- Spring开源框架技术 (609篇文章)
- Hibernate原理与配置 (340篇文章)
- 中小企业防病毒解决方案 (5982篇文章)
- 125条常见的java面试笔试题大汇总 (23470次浏览)
- 十四种Java开发工具点评 (16011次浏览)
- JAVA中配置环境变量设置方法大全 (14586次浏览)
- 论Java外观模式 (1091次浏览)
- 英文打字练习 (718次浏览)
- Java编程十大典型问题详解(1) (637次浏览)
- Java路径问题最终解决方案 (598次浏览)
- Ruby,Java的劲敌 (582次浏览)
- Java学习从入门到精通(附FAQ)2 (579次浏览)
- JAVA高手解析XML配置文件的读取操作 (568次浏览)



