您的位置:首页 > 编程语言 > Java开发

JAVA乱码问题全解决

2011-12-14 15:19 134 查看
在写JAVA WEB程序的时候,困惑我们许久的问题之一的就是JAVA编码问题,下面我对JAVA WEB可能出现乱码的地方,将其列举出来:

1.比如 http://localhost:8080/Smarter/userInfoEx!setUserbyAccount?account=001&demo=明胆

地址栏一输入按回车,就出现 http://localhost:8080/Smarter/userInfoEx!setUserbyAccount?account=001&demo=%E6%98%8E%E8%83%86

我这个操作的功能是:

(SQL语句)update UserInfoEnity user set user.demo='"+demo+"' where user.account='"+account+"'"

更新到数据库出现乱码。

然后我百度了一下:

解决方法是: 在tomcat/conf/server.xml中添加

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443"

URIEncoding="UTF-8"

/>

设置其编码方式,这样问题就解决了。

2.还有一种情况就是页面出现乱码的情况,我就把request,response都设置成UTF-8,如下所示:

HttpServletResponse response = ServletActionContext.getResponse();

response.setContentType("text/html; charset=utf-8");

response.setCharacterEncoding("utf-8");

HttpServletRequest request = ServletActionContext.getRequest();

request.setCharacterEncoding("utf-8");

(在struts2 里面有HttpServletResponse ,HttpServletRequest两个类 )

3.还有一种设置编码的,就是在struts.properties,struts.xml文件中设置编码方式:

3.1在struts.xml文件中加入:

<constant name="struts.i18n.encoding" value="utf-8" />

3.2或者在struts.properties中加入:

struts.i18n.encoding=utf-8

即可.

内部地址:

http://www.gzios.com/ppar/bbs/forum.php?mod=viewthread&tid=352&extra=page%3D1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: