码迷,mamicode.com
首页 > 其他好文 > 详细

Struts2乱码问题的解决办法

时间:2015-07-19 16:18:15      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:

   乱码问题的起因在于数据在web系统的各个层中间传递的时候编码不同,比如页面使用GB18030而中间层使用UTF-8。由于struts2默认使用的就是UTF-8编码,所以在页面如果使用的是其他的编码格式,那么表单提交后就会产生乱码了。

   我们使用过滤器来解决这个问题。

   以页面使用GB18030为例,两个步骤:

   1、在struts.xml中添加:<constant name="struts.i18n.encoding" value="GB18030"/>

   2、编写转码过滤器:

public class CharacterEncodingFilter implements Filter{

    @Override
    public void destroy() {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void doFilter(ServletRequest arg0, ServletResponse arg1,
            FilterChain arg2) throws IOException, ServletException {
        // TODO Auto-generated method stub
        arg0.setCharacterEncoding("GB18030");
        arg2.doFilter(arg0, arg1);
    }

    @Override
    public void init(FilterConfig arg0) throws ServletException {
        // TODO Auto-generated method stub
        
    }

}

 

Struts2乱码问题的解决办法

标签:

原文地址:http://www.cnblogs.com/lyhero11/p/4658754.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!