`
hebenben
  • 浏览: 35750 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

java web中配置Filter解决jsp中文乱码问题

阅读更多
今天在做DynaActionForm练习的时候,在表单提交时,遇到了提交中文出现乱码的问题。虽然以前解决过类似的问题,但总是没有记录相关的笔记。后来在网的找了一大堆的文章看了以后,大部都是乱说一通,感觉行得通,但太麻烦了,于是找到自己以前做过的小项目中,看了一下以前设计的Filter,让站点内所有的编码都为utf-8的形式输出!于是也在自己DynaActionForm的练习中配置了一下Filter,之后,整个Project里面的东西,都没有出现乱码的问题了。下面说一下具体的做法:
建立一个实现Filter接口的类。这个类需要三个方法,分别是:doFilter、init和destroy。doFilter方法包含主要的过滤代码,init方法建立设置操作,而destroy方法进行清除。
比如我建立的是FilterChar.java
package com.gtxy.dynaActionForm.web.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;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* 以 UTF-8 输入输出
*
* @author ZhongHuiQiang
*
*/
public class FilterChar implements Filter {

  private String config;

  public void destroy() {
    this.config = null;
  }

  /**
    * name="FilterChar" <br>
    * init-param name="config" value="utf-8"<br>
    * mapping url-pattern="/*"<br>
    */
  public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    HttpServletRequest req;
    req = (HttpServletRequest) request;

    HttpServletResponse res;
    res = (HttpServletResponse) response;

    req.setCharacterEncoding(config);
    res.setCharacterEncoding(config);
    chain.doFilter(req, res);

  }

  /**
    * 获得web.xml中初始化的参数
    */
  public void init(FilterConfig config) throws ServletException {
    this.config = config.getInitParameter("chars");
  }

}


OK,FilterChar类写完后,就要配置web.xml了!
在web.xml里面,最主要是下面这段代码
<filter>
    <filter-name>FilterChar</filter-name>
    <filter-class>
     com.gtxy.dynaActionForm.web.filter.FilterChar
    </filter-class>
    <init-param>
      <param-name>chars</param-name>
      <param-value>utf-8</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>FilterChar</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>




转自:http://webview.blog.51cto.com/969902/245781
分享到:
评论

相关推荐

    如何配置Filter过滤器处理JSP中文乱码

    【如何配置Filter过滤器处理JSP中文乱码】 在开发Java Web应用时,尤其是在处理包含中文字符的请求时,可能会遇到中文乱码的问题。解决这个问题的一种常见方法是使用Filter过滤器。以下是配置Filter过滤器处理JSP...

    java项目jsp中乱码问题解决

    在Java项目开发中,尤其是使用JSP技术时,经常遇到的中文乱码问题是一个常见的困扰。这涉及到编码和解码的过程,以及不同平台和环境之间的兼容性问题。Java的默认编码是Unicode,而中文文件和数据库通常使用GB2312或...

    java+jsp+mysql开发 web项目处理中文乱码问题

    处理 Java+jsp+mysql 开发 web 项目中文乱码问题 在 Java+jsp+mysql 开发 web 项目中,中文乱码问题是一个常见的...通过以上四个方面的解决方法,我们可以完全解决 Java+jsp+mysql 开发 web 项目中的中文乱码问题。

    jsp中文乱码的解决方案

    文档《JSP各种乱码的处理(一).doc》和《JSP各种乱码的处理(二).doc》中可能详细列举了各种JSP乱码问题的实例及解决方法,包括但不限于文件上传、读取流、数据库操作等方面,建议参考学习,以便更全面地理解并解决...

    JSP中文乱码问题解决总结

    在IT行业中,尤其是在Web开发领域,JSP(JavaServer Pages)是常见的动态网页技术,而中文乱码问题一直是开发者们经常遇到的困扰。本篇文章将深入探讨JSP中文乱码问题的原因、解决策略以及预防措施。 一、乱码产生...

    JavaJSP中文乱码问题解决心得.doc

    ### Java/JSP中文乱码问题解决心得 #### 一、Java中文问题的由来 Java作为一种广泛使用的编程语言,其核心设计目标之一就是提供良好的跨平台能力。为此,Java采用了Unicode作为其内部处理字符的标准,这使得Java...

    Servlet及jsp解决中文乱码问题

    本文将详细介绍如何在Servlet与JSP中彻底解决中文乱码问题,并给出具体的解决方案。 #### 二、中文乱码的原因分析 中文乱码主要由以下几个原因引起: 1. **服务器端编码设置不正确**:如果服务器端的字符集设置与...

    java乱码问题解决方法

    Java 乱码问题是 Java 开发中常见的问题之一,解决这个问题需要了解 Java 的编码方式、JSP 中文乱码问题、Tomcat 5.5 中文乱码问题、JDBC ODBC Bridge 的 Bug 及其解决方法、Solaris 下 Servlet 编程的中文问题及...

    jsp用过滤器解决中文乱码问题的方法.docx

    jsp 用过滤器解决中文乱码问题的方法 jsp(JavaServer Pages)是一种广泛...通过定义一个过滤器类,实现Filter接口,并在web.xml文件中配置过滤器,我们就可以解决中文乱码问题。这个方法非常简单、实用,值得推荐。

    web项目乱码问题 jsp乱码问题解决

    在Web开发中,尤其是涉及到Java和JSP的项目,中文乱码问题常常困扰着开发者。本文将深入探讨这个问题,提供解决方案。 首先,我们需要理解乱码的根源。乱码通常由于字符编码不一致导致,尤其是在JSP文件中,不同的...

    JSP中文乱码问题分析及处理方法

    JSP中文乱码问题主要是由字符编码不一致引起的,通过在JSP文件中明确指定编码格式或在服务器层面配置统一的编码标准,可以有效地解决这一问题。在实际开发中,应根据项目的规模和需求选择合适的解决方案,确保中文...

    解决jsp中文乱码问题

    本文将详细介绍如何解决JSP中中文乱码的问题,包括页面传递中文参数时可能出现的乱码情况。 #### 一、中文乱码的原因分析 中文乱码主要是因为字符编码不一致导致的。当数据从一个环境传递到另一个环境时,如果这两...

    jsp乱码解决超酷,通过web.xml配置

    "jsp乱码解决超酷,通过web.xml配置"这个标题表明,我们将通过配置`web.xml`文件来解决JSP页面中的乱码问题。下面将详细介绍这个过程以及相关的知识点。 首先,我们需要理解JSP乱码产生的原因。当用户通过表单提交...

    JSP利用过滤器解决request中文乱码问题.docx

    JSP利用过滤器解决request中文乱码问题 ...使用过滤器解决request中文乱码问题是JSP中解决中文乱码问题的一种有效方法。通过设置过滤器,可以确保中文字符被正确地读取和处理。这对JSP开发者来说非常重要。

    解决jsp页面中文乱码问题

    在开发Web应用时,我们经常会遇到JSP页面中文乱码的问题。这主要涉及到字符编码的设置和处理。本文将深入探讨如何解决这个问题,确保在JSP页面中正确显示中文字符。 首先,我们需要理解字符编码的基本概念。在...

    java配置过滤器,解决乱码

    下面我们将深入探讨Java中的乱码问题,以及如何通过配置过滤器来解决这个问题。 首先,我们要理解Java乱码的根源。乱码通常出现在两个主要场景:输入(如POST表单数据)和输出(如JSP页面显示)。在Java Web应用中...

    利用过滤器解决JavaWeb(JSP)的乱码问题

    总之,解决JavaWeb中的乱码问题需要从多个层面进行考虑:设置过滤器统一请求和响应的编码,确保JSP页面的编码正确,以及在处理文件时注意文件内容的编码。通过这些方式,我们可以有效防止和解决乱码问题,提高应用...

    JSP中文乱码问题综述,中文乱码解决大全

    在JSP开发中,中文乱码是一个常见的问题,主要是由于编码不一致和处理不当导致的。Java语言和JSP文件基于Unicode,但保存和处理时可能会采用不同的编码,这就会引发乱码。本文将深入探讨JSP中文乱码的来源以及解决...

    struts中文乱码问题解决详细步骤

    解决这个问题通常涉及到编码设置的调整,下面将详细介绍两种方法来解决Struts中的中文乱码问题。 **方法一:配置Filter** 1. **添加过滤器**:首先,我们需要在Web应用的`web.xml`文件中添加一个`...

Global site tag (gtag.js) - Google Analytics