在用jsp+struts2做个网站时,当要直接传中文字符到action中的方法总是出现乱码,在网上试了一些方法没有达到效果,一下两种方法是本人用过不会出现乱码的。

方法一:

public void setSingerGender(String singerGender) {
		try {
			this.singerGender = new String(singerGender.getBytes("iso-8859-1"),"utf-8");
		} catch (UnsupportedEncodingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

这是在action 中的set方法中对 所需字段进行直接转换。
this.singerGender = new String(singerGender.getBytes("iso-8859-1"),"utf-8");


方法二:

在tomcat的server.xml中加入URIEncoding="utf-8" (网页的编码是utf-8)
    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"  redirectPort="8443"  URIEncoding="utf-8"/>

听说这种方法也可以解决图片路径或者名称是中文的问题。


注意:这两种方法不要一起使用,不如中文字符就变成‘?’了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

posted on 2015-03-26 08:52  六月心悸  阅读(488)  评论(0编辑  收藏  举报