java web过滤器处理乱码

 更新时间:2017年04月06日 09:11:14   作者:甄情  
本文主要介绍了java web过滤器处理乱码的方法解析。具有很好的参考价值。下面跟着小编一起来看下吧

我们在servlet页面中读取前台的数据时  经常会出现乱码问题

而自己每次都要在servlet中使用

String encoding="utf-8"; 
request.setCharacterEncoding(enconding); 
response.setCharacterEncoding(enconding); 

来进行编码的转换  会很麻烦

所以使用过滤器 我们可以避免这些重复的工作

web.xml配置

<filter> 
 <filter-name>encodingFilter</filter-name> 
 <filter-class>com.scx.filter.Filter</filter-class> 
 <!-- 初始化参数 --> 
 <init-param> 
  <param-name>encoding</param-name> 
  <param-value>utf-8</param-value> 
 </init-param> 
 </filter> 
 <!-- filter映射关系 --> 
 <filter-mapping> 
 <filter-name>encodingFilter</filter-name> 
 <url-pattern>/*</url-pattern> 
 </filter-mapping> 

Filter

package com.scx.filter; 
import java.io.IOException; 
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; 

public class Filter implements javax.servlet.Filter{ 
  //读取过滤器配置文件 
  private FilterConfig config; 
  public void destroy() { 
    // TODO Auto-generated method stub 
  } 
  public void doFilter(ServletRequest arg0, ServletResponse arg1, 
      FilterChain chain) throws IOException, ServletException { 
    // TODO Auto-generated method stub 
    HttpServletRequest request=(HttpServletRequest) arg0; 
    HttpServletResponse response=(HttpServletResponse) arg1; 
    String encoding=config.getInitParameter("encoding"); 
    if(encoding==null||"".equals(encoding)){ 
      encoding="utf-8"; 
    } 
    request.setCharacterEncoding(encoding); 
    response.setCharacterEncoding(encoding); 
    chain.doFilter(request, response); 
  } 
  public void init(FilterConfig arg0) throws ServletException { 
    // TODO Auto-generated method stub 
    config=arg0; 
  } 
} 

这样的话  在servlet里面读取到的数据就不会出现乱码的情况了

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

相关文章

  • Java CPU性能分析工具代码实例

    Java CPU性能分析工具代码实例

    这篇文章主要介绍了Java CPU性能分析工具代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • FastJSON的0day漏洞的解决

    FastJSON的0day漏洞的解决

    本文主要介绍了FastJSON的0day漏洞的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • SpringBoot3集成Kafka的方法详解

    SpringBoot3集成Kafka的方法详解

    Kafka是一个开源的分布式事件流平台,常被用于高性能数据管道、流分析、数据集成和关键任务应用,下面我们就来看看SpringBoot3是如何集成Kafka的吧
    2023-08-08
  • java命令打jar包详细步骤示例讲解

    java命令打jar包详细步骤示例讲解

    对于如何将一个java文件通过命令形式进行打包,通过以下示例进行讲解,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-12-12
  • Netty网络编程实战之搭建Netty服务器

    Netty网络编程实战之搭建Netty服务器

    Netty是JBOSS开源的一款NIO网络编程框架,可用于快速开发网络的应用。Netty是一个异步的、基于事件驱动的网络应用框架,用于快速开发高性能的服务端和客户端。本文将详细说说如何搭建Netty服务器,需要的可以参考一下
    2022-10-10
  • Java 括号匹配问题案例详解

    Java 括号匹配问题案例详解

    这篇文章主要介绍了Java 括号匹配问题案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • Spring @ExceptionHandler注解统一异常处理和获取方法名

    Spring @ExceptionHandler注解统一异常处理和获取方法名

    这篇文章主要介绍了Spring注解之@ExceptionHandler 统一异常处理和获取方法名,在实际项目中,合理使用@ExceptionHandler能够提高代码的可维护性和用户体验,通过本文的解析和实践,读者可以更好地理解和掌握@ExceptionHandler的用法和原理
    2023-09-09
  • java面试题之数组中的逆序对

    java面试题之数组中的逆序对

    这篇文章主要为大家详细介绍了java面试题之数组中的逆序对,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-03-03
  • Java异常类型以及处理实例详解

    Java异常类型以及处理实例详解

    在程序设计中,进行异常处理是非常关键和重要的一部分,一个程序的异常处理框架的好坏直接影响到整个项目的代码质量以及后期维护成本和难度,这篇文章主要给大家介绍了关于Java异常类型以及处理的相关资料,需要的朋友可以参考下
    2021-07-07
  • java算法题解牛客BM99顺时针旋转矩阵示例

    java算法题解牛客BM99顺时针旋转矩阵示例

    这篇文章主要为大家介绍了java算法题解牛客BM99顺时针旋转矩阵示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01

最新评论