`

java 过滤乱码

    博客分类:
  • java
阅读更多

 web.xml

<filter>
  <filter-name>Set Character Encoding</filter-name>
  <filter-class>
   cyoa.filter.SetCharacterEncodingFilter
  </filter-class>
  <init-param>
   <param-name>encoding</param-name>
   <param-value>UTF-8</param-value>
  </init-param>
 </filter>
   <filter-mapping>
  <filter-name>Set Character Encoding</filter-name>
  <url-pattern>*.do</url-pattern>
 </filter-mapping>

 

 

// Decompiled by DJ v3.9.9.91 Copyright 2005 Atanas Neshkov  Date: 2007-6-27 15:21:40
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) fieldsfirst ansi
// Source File Name:   SetCharacterEncodingFilter.java

package cyoa.filter;

import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class SetCharacterEncodingFilter
    implements Filter
{

    private String encoding;
    private FilterConfig config;

    public SetCharacterEncodingFilter()
    {
        encoding = null;
        config = null;
    }

    public void destroy()
    {
        encoding = null;
        config = null;
    }

    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
        throws IOException, ServletException
    {
       
       //过滤用户
        HttpSession session = ((HttpServletRequest)request).getSession();
        HttpServletRequest httpServletRequest=(HttpServletRequest)request;
        String requestUrl = httpServletRequest.getRequestURI();
        if(session.getAttribute("username")==null&&session.getAttribute("rID")==null
              &&!requestUrl.endsWith("/exitLogin.do")
                 && !requestUrl.endsWith("/login.do")
                 && !requestUrl.endsWith("/userInfoEdit.do")
                 && !requestUrl.endsWith("/userRegister.do")
                 && !requestUrl.endsWith("/upload.do")
                 && !requestUrl.endsWith("/login.jsp")
                 && !requestUrl.endsWith("/clinicEdit.do")
                 && !requestUrl.endsWith(httpServletRequest.getContextPath()+ "/")
                )
         {
     ((HttpServletResponse)response).sendRedirect(httpServletRequest.getContextPath()+"/exitLogin.do");
        return;
      }
     encoding = getEncoding();
     if(encoding == null)
        encoding = ((HttpServletRequest)request).getCharacterEncoding();
     if(encoding == null)
        encoding = config.getInitParameter("encoding");
     if(encoding != null)
    
     request.setCharacterEncoding(encoding);
       
     chain.doFilter(request, response);
    }

    public void init(FilterConfig filterConfig)
        throws ServletException
    {
        config = filterConfig;
    }

    public String getEncoding()
    {
        return encoding;
    }
}

分享到:
评论

相关推荐

    java过滤乱码的unicode和回车.zip_Zero_java_过滤不可见unicode字符_过滤回车

    由于编辑人员从excel,word等乱七八糟的地方copy内容过来,其中有不可见的字符,导致输出内容看上去是对的,其实是多了一个零长度的字符(比如:\u2028,0000200B ZERO WIDTH SPACE),所以需要过滤掉不合法的...

    java配置过滤器,解决乱码

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

    JAVA中文乱码过滤器

    "JAVA中文乱码过滤器"是一种解决方案,旨在帮助开发者更轻松地应对这个问题,避免繁琐的编码转换步骤,提高开发效率。本文将深入探讨Java中文乱码的成因,并介绍这个过滤器的工作原理和使用方法。 1. **中文乱码的...

    Java关于中文乱码问题的多种解决方法

    在Java编程中,中文乱码问题是一个常见的困扰,尤其是在处理文件读写、网络传输或数据库操作时。本文将深入探讨几种解决Java中中文乱码问题的方法,并以MyEclipse为开发环境,结合实际示例进行讲解。 1. 文件读写中...

    java中文乱码大全

    Java中文乱码问题是编程者在开发Java应用程序时经常遇到的问题,尤其是涉及到中文字符处理时。这些问题产生的根本原因在于Java内部采用UNICODE编码,而不同的操作系统和浏览器可能支持不同的编码格式,如Windows中文...

    Java过滤器,字符过滤,标签过滤

    首先,让我们了解一下Java过滤器的基础知识。在Java Servlet规范中,Filter接口定义了过滤器的行为。一个过滤器可以通过实现`doFilter()`方法来拦截请求和响应,并对其进行处理。通过在web.xml配置文件中定义过滤器...

    java字符过滤器,过滤器

    Java过滤器就是为了解决这些问题,确保数据在处理过程中保持正确的编码格式。 在Java中,字符乱码通常是由于字符编码不一致导致的。例如,一个以UTF-8编码的文件被误认为是GBK编码来读取,就会出现乱码现象。为了...

    JAVA过滤器标准代码

    ### JAVA过滤器标准代码解析与应用 在Java Web开发中,过滤器(Filter)是一种用于拦截请求和响应的重要机制,可以实现对用户请求的预处理和后处理,以及对响应的处理。本文将深入解析“JAVA过滤器标准代码”,探讨...

    java 中文乱码 处理

    ### Java中文乱码处理 在Java开发过程中,中文乱码问题常常令人头疼,尤其是在Web应用中,客户端提交的数据经常会出现编码不一致导致的乱码问题。本文将介绍几种解决Java中中文乱码的方法,希望能对您有所帮助。 #...

    JAVA乱码过滤器的JAR包

    过滤中文字符,免出现乱码FILTER的JAR包,只要将其导入项目中便可使用

    java中文乱码问题处理方案.docx

    "java中文乱码问题处理方案" java 中文乱码问题处理方案是 java 开发者经常遇到的问题之一。这个问题的存在是由于 java 系统的中文问题原理没有被正确地理解和解决。只有当我们了解了 java 系统的中文问题原理,...

    java中文过滤器消除乱码问题

    本篇将详细讲解如何利用这种过滤器来消除Java Web中的乱码问题。 首先,我们需要理解乱码产生的原因。在Java Web应用中,乱码通常源于字符编码不一致。例如,HTTP请求的数据可能使用UTF-8编码,而服务器默认使用GB...

    Java乱码学习 Java乱码学习

    Java 乱码问题一直是开发过程中常见的困扰之一,它涉及到字符编码的理解、文件编码的设定以及网络传输中的编码处理。本文将深入探讨Java编程中的乱码现象,并提供一系列的解决策略。 首先,我们要理解两个基本概念...

    java过滤器的使用

    Java过滤器(Filter)是Java Web开发中的一个重要概念,它主要应用于Servlet容器中,如Tomcat、Jetty等。过滤器允许我们在请求被发送到目标资源(如Servlet、JSP页面)之前或之后进行预处理和后处理。在这个场景中,...

    java过滤器中文乱码POST和GET

    主要解决表单提交中文乱码问题,主要针对页面GET提交的处理编码问题,设计知识 过滤器,servlet,装饰设计模式等

    java里中文乱码的解决篇之过滤器

    总结一下,Java Web中的中文乱码问题主要通过设置正确的字符编码来解决,而过滤器是处理这个问题的一种有效手段。通过创建并配置过滤器,我们可以确保请求和响应的编码一致,从而避免中文乱码的出现。同时,注意整个...

    java中文乱码过滤器

    解决中文在web里的乱码的过滤器,有效的保证开发效率。。。

    JAVA Web 用过滤器和包装器消除乱码

    本文将深入探讨如何使用JAVA Web的过滤器和包装器来消除乱码问题。 首先,我们来看过滤器(Filter)。在JAVA Web中,过滤器是Servlet规范的一部分,它允许我们在请求到达目标Servlet或JSP之前对请求进行预处理,也...

    Java中文乱码问题研究.pdf

    3. 使用过滤器:使用过滤器可以解决Java Web应用程序中的中文乱码问题。例如,可以使用CharacterEncodingFilter来设置请求和响应的编码方式。 4. 使用Unicode编码:使用Unicode编码可以解决Java Web应用程序中的...

    jsp中文乱码过滤器

    **JSP中文乱码过滤器详解** 在Java Web开发中,JSP(JavaServer Pages)是一种常见的用于创建动态网页的技术。然而,当处理包含中文字符的数据时,可能会遇到乱码问题,这通常与字符编码设置有关。为了解决这个问题...

Global site tag (gtag.js) - Google Analytics