昨日一同事喊我去他的机子上救火,告诉我折腾了半天,还是存在中文乱码问题。15分钟后找到了问题的原因。 现象: url = jdbc:mysql://127.0.0.1/test?useUnicode=true amp; characterEncoding=UTF-8,这段代码出现在配置文件(database.properties)中。 分析:
昨日一同事喊我去他的机子上救火,告诉我折腾了半天,还是存在中文乱码问题。15分钟后找到了问题的原因。
现象:url = jdbc:mysql://127.0.0.1/test?useUnicode=true&characterEncoding=UTF-8,这段代码出现在配置文件(database.properties)中。
分析:上述是原先写的,问题就在& xml/html转译符上,在xml/html里面需要写成转义符,但是在纯文本的模式下写成那样就不对了,将导致配置参数无效,原来问题出在一个标点符号上。
去掉amp; 写成 url = jdbc:mysql://127.0.0.1/test?useUnicode=true&characterEncoding=UTF-8,即可。
收工以前,做了五分钟的科普向同事们总结了一下,一般导致中文乱码问题7点因素:
1.数据库使用的字符集
2.数据库表使用的字符集
3.html、JSP 页面上的编码
4.使用的JDBC url连接是否正确
5.web服务器端 应用服务器 和 操作系统 设置的字符集是否和你需要的匹配
6.你的IDE开发环境(Eclipse)工程使用的字符集是否匹配
7.检查你的工程的web.xml文件是否在使用关于字符编码的过滤器
以上几点原因都是导致产生中午乱码的因素,如果你的项目中出现了中文乱码不妨可以按照上述思路试试。
–end–
原文地址:Java web开发中文乱码问题, 感谢原作者分享。