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里面读取到的数据就不会出现乱码的情况了

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

相关文章

  • 解析Spring框架中的XmlBeanDefinitionStoreException异常情况

    解析Spring框架中的XmlBeanDefinitionStoreException异常情况

    这篇文章主要介绍了解析Spring框架中的XmlBeanDefinitionStoreException异常情况,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-04-04
  • 使用Java实现HTTP和HTTPS代理服务详解

    使用Java实现HTTP和HTTPS代理服务详解

    这篇文章主要为大家详细介绍了如何使用Java实现HTTP和HTTPS代理服务,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-04-04
  • Spring发送邮件如何内嵌图片增加附件

    Spring发送邮件如何内嵌图片增加附件

    这篇文章主要介绍了Spring发送邮件如何内嵌图片增加附件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • Springboot继承Keycloak实现单点登录与退出功能

    Springboot继承Keycloak实现单点登录与退出功能

    这篇文章主要介绍了Springboot继承Keycloak实现单点登陆与退出,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08
  • java定时任务cron表达式每周执行一次的坑及解决

    java定时任务cron表达式每周执行一次的坑及解决

    这篇文章主要介绍了java定时任务cron表达式每周执行一次的坑及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • java如何强制删除java程序占用的文件

    java如何强制删除java程序占用的文件

    这篇文章主要介绍了java如何强制删除java程序占用的文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • 关于远程调用RestTemplate的使用避坑指南

    关于远程调用RestTemplate的使用避坑指南

    这篇文章主要介绍了关于远程调用RestTemplate的使用避坑指南,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • 利用Java实现简单的猜数字小游戏

    利用Java实现简单的猜数字小游戏

    这篇文章主要为大家详细介绍了如何利用java语言实现猜数字小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • 详解idea maven nexus 常见命令配置

    详解idea maven nexus 常见命令配置

    这篇文章主要介绍了idea maven nexus 常见命令配置的相关知识,通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • Mybatis详细对比一级缓存与二级缓存

    Mybatis详细对比一级缓存与二级缓存

    MyBatis 包含一个非常强大的查询缓存特性,它可以非常方便地配置和定制,缓存可以极大的提升查询效率。MyBatis中默认定义了两级缓存,分别是一级缓存和二级缓存
    2022-10-10

最新评论