很郁闷啊,我存到数据库里的内容和取出来显示为标题都可以是汉字,但是一点标题到了显示内容的页面就变成了好多????和乱码,但是点击标题在地址栏里可以发现标题和内容都是汉字,我也用了过滤器的,是否是页面传递的问题,是的话,pageEncoding和charset怎么设置呢?是这样吗? pageEncoding=“gbk”和charset=“gb2312”
或者到底是charset呢,还是Charset呢?望指点。
或者到底是charset呢,还是Charset呢?望指点。
此时就需要修改Tomcat 中config文件夹下的server.xml
在<Connector>标签中添加URIEncoding="gbk"(或者utf-8),即可
解决乱码!
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8443" URIEncoding="utf-8"/>
中的<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-9"/> 试一试
在form 表单里面加上这句话,就不会出现乱码了。
/**
* 将编码转成中文编码GBK
* @author hejinlong
* 返回中文字符串
*/
public class tools { /**
* @param str
* 需要转换的字符串
* @return
* 中文字符串
*/
public static String toGBK(String str) {
try {
str = java.net.URLEncoder.encode(str, "gb2312");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return str;
}}
在要获取参数的页面写上这句也行的
然后在后台把要传递的参数压码 如10楼
,
1、Struts+JSP时,
Struts设置成GBK,而而JSP端设置成GBK,GB2312,GB18030 --> 没问题
Struts设置成GBK,而而JSP端设置成UTF-8 --> 乱码
Struts设置成UTF-8,而JSP端设置成GBK,GB2312,GB18030 --> 乱码
Struts设置成UTF-8,而JSP设置成UTF-8 -->没问题
2、Struts+Ajax+JSP时,
Struts设置成GBK,而而JSP设置成GBK,GB2312,GB18030 --> 乱码
Struts设置成GBK,而而JSP设置成UTF-8 -->乱码
Struts设置成UTF-8,而JSP端GBK,GB2312,GB18030 --> 没问题
Struts设置成UTF-8,而JSP设置成UTF-8 -->没问题 我自己对照这上面的修改了也没有解决,自我总结是基础知识不过关吧,尤其是关于jsp的,继续研究。