关于Struts的中文乱码问题

Posted 那年夏天123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Struts的中文乱码问题相关的知识,希望对你有一定的参考价值。

今天学习Struts遇到了中文乱码问题

首先我的习惯是jsp中的编码方式都设为utf-8,因为mysql中也是utf-8

结果在我的一个表单的传值过程中还是出现了中文乱码

我在网上查阅资料终于找到解决方法:

总之,各处都设成utf-8

 

然后在 配置文件 web.xml 中设置一个过滤器

    <filter>
        <filter-name>characterEncoding</filter-name>
        <filter-class>com.sz.filter.CharacterEncodingFilter</filter-class>
    </filter> <filter-mapping>
        <filter-name>characterEncoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

然后在响应的包下写上代码,设置request的编码为utf-8

package com.sz.filter;

import java.io.IOException;  

import javax.servlet.Filter;  
import javax.servlet.FilterChain;  
import javax.servlet.FilterConfig;  
import javax.servlet.ServletException;  
import javax.servlet.ServletRequest;  
import javax.servlet.ServletResponse;  
 
public class CharacterEncodingFilter implements Filter {  
 
    @Override  
    public void destroy() {  
    }  
 
    @Override  
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,ServletException   {  
    request.setCharacterEncoding("utf-8");  
    chain.doFilter(request, response);  
    }  
 
    @Override  
    public void init(FilterConfig arg0) throws ServletException {  
    }  
}

 然后问题就解决了

 



































以上是关于关于Struts的中文乱码问题的主要内容,如果未能解决你的问题,请参考以下文章

深入Struts2的过滤器FilterDispatcher--中文乱码及字符编码过滤器

解决Struts中文乱码问题总结

Struts2 action 接受乱码问题

struts 乱码

Struts模型驱动中文乱码!!

Struts2文件下载中文名乱码