stuts2中文乱码处理步骤

来源:互联网 发布:2016年癌症数据 编辑:程序博客网 时间:2024/05/01 16:30

关于struts2中的中文出现乱码问题,自己小结了一下,其中有些并不知道其中的原理,但却很管用的大笑,特此将其总计记录下来。也感谢那些无私的前辈们

《1》浏览器设置,以firefox为例 ,选项—>内容->字体高级设置——>字符编码。(UTF-8)

《2》 jsp页面编码设置pageEncoding="UTF-8"

《3》 定制fiter 配置fiter

     <!--配置字符编码的过滤器-->
    <filter>
    <filter-name>EncodingFilter</filter-name>
    <filter-class>com.filter.EncodingFilter</filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>
    </init-param>
    </filter>
    <!-- 过滤器映射 -->
    <filter-mapping>
    <filter-name>EncodingFilter</filter-name>
    <url-pattern>/*</url-pattern><!-- 对所有资源过滤 -->
    </filter-mapping>

               EncodinFiter.java

public class EncodingFilter implements Filter {
    private FilterConfig config;
    private String encoding="utf-8";
    public void destroy() {
        // TODO Auto-generated method stub

    }

    public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain chain) throws IOException, ServletException {
        request.setCharacterEncoding(encoding);//过滤请求的编码
        chain.doFilter(request, response);//继续过滤
        response.setContentType("text/html;charset=utf-8");//过滤响应的编码

    }

    public void init(FilterConfig config) throws ServletException {
        this.config=config;
        String s=config.getInitParameter("encoding");//获取初始化参数数,
        if(s!=null){
            this.encoding=s;
        }

    }

}

 

 

 

 

          

《4》action中配置字符集 <constant name="struts.i18n.encoding" value="UTF-8" />

《5》服务器编码配置和数据库存贮i=编码配置

    打开<tomcat_home>\conf目录下server.xml文件,找到对8080端口进行服务的Connector组件的设置部分,给这个组件添加一个属性:URIEncoding="GBK"。修改后的Connector设置为: 

       Java代码   

       <Connector          port="8080" maxHttpHeaderSize="8192"                 maxThreads="150" minSpareThreads="25" maxSpareThreads="75"                 enableLookups="false" redirectPort="8443"   

     acceptCount="100"                 connectionTimeout="20000" disableUploadTimeout="true" <span style="color: #ff0000;">URIEncoding="GBK"</span> />

 

 

 

 

原创粉丝点击