`

解决Servlet的乱码过滤器

阅读更多

1.

//第一种方式,这种方式在每个需要传参的地方都要写,会累死的

username = new String(username.getBytes("ISO-8859-1"),"GBK");

 


2.在每个Servlet中加入:这种方式基本上每个页面都要写,并且仅对POST方法有效,因为GET方法在客户端就已经完成编码工作了,写进去也无效

request.setCharacterEncoding("GBK");
response.setCharacterEncoding("GBK");

 

3.用过滤器,严重推荐

package com.umt.base;

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;

public class SetEncoding implements Filter {
   private String encoding = "ISO-8859-1";

   public void destroy() {
   
   }

   public void doFilter(ServletRequest request, ServletResponse response,
     FilterChain chain) throws IOException, ServletException {
    request.setCharacterEncoding(this.encoding);
    response.setCharacterEncoding(this.encoding);
   
    chain.doFilter(request, response);
   }

   public void init(FilterConfig config) throws ServletException {
    String encod = config.getInitParameter("encoding");
    if(encod != null && encod.length() > 0){
     this.encoding = encod;
    }
   }

}

 
//在web.xml中配置如下信息:

  

<filter>
   <filter-name>setEncoding</filter-name>
   <filter-class>com.umt.base.SetEncoding</filter-class>
   <init-param>
   <param-name>encoding</param-name>
   <param-value>GBK</param-value>
   </init-param>
   </filter>
   
   <filter-mapping>
   <filter-name>setEncoding</filter-name>
   <url-pattern>/*</url-pattern>
   </filter-mapping>
 
  1. <!-- 利用spring解决乱码 -->  
  2.  <filter>  
  3.   <filter-name>encoding</filter-name>  
  4.   <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>  
  5.   <init-param>  
  6.    <param-name>encoding</param-name>  
  7.    <param-value>UTF-8</param-value>  
  8.   </init-param>  
  9.  </filter>  
  10.  <filter-mapping>  
  11.   <filter-name>encoding</filter-name>  
  12.   <url-pattern>/*</url-pattern>  
  13.  </filter-mapping>  
分享到:
评论

相关推荐

    servlet过滤器解决乱码问题

    最简单的写法 只要JSP页面的 编码格式和 web.xml 编码格式一样就行

    STRUTS ActionForm乱码,servlet全局过滤器转义编码。

    STRUTS ActionForm乱码,servlet全局过滤器转义编码

    java中servlet文字过滤器

    java中servlet文字过滤器,取出一下页面上的乱码。我就就要用到servlet这个过滤器。

    Servlet转码过滤器.rar

    如果输入是中文,后台servlet再次输出这个内容时,可能就会是乱码,这是因为serlvet中默认是以ISO-8859-1格式编码的,如果后台有多个Servlet,多个参数,这样就不合适,这个问题,我们可以通过一个过滤器统一解决,使...

    servlet过滤器Api 以及乱码处理.javascript注入问题

    servlet过滤器Api 以及乱码处理.javascript注入问题

    Servlet过滤器使用

    Servlet过滤器,主要配置了中文乱码及未登陆验证过滤器。 代码简单明了,易学。 过滤器实现类 1、Filter接口:所有的Servlet过滤器类都必须实现javax.servlet.Filter接口 a、init(FilterConfig): 这是Servlet...

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

    配置Filter过滤器处理JSP中文乱码 参考Tomcat服务器目录webapps的examples示例 简单配置步骤: 1.在项目web.xml文件添加过滤器标记和; 2.实现过滤器代码; 3.对Tomcat服务器conf目录里的Server.xml文件配置...

    中文乱码过滤器

    一个简单的类,写进项目里解决中文乱码问题。

    servlet过滤器配置,解决JSP的所有乱码

    JSP页面获得sercvlet是不是经常出现乱码呢?很烦人哦,那就试试这个吧,可以解决所有的乱码,里面有说明教你怎么配.

    servlet与jsp中文乱码处理

    servlet与jsp中文乱码处理,详细介绍多种乱码处理方法,包括使用过滤器的方法

    Servlet 中文乱码解决工具类

    在Java Web程序开发中,由于Web容器内部使用编码格式并不支持中文字符集,所以,处理浏览器请求中的中文数据就会出现乱码的现象。由于Web容器使用了ISO-...如果通过过滤器来处理字符编码,就可以做到简单又万无一失。

    java过滤器中文乱码POST和GET

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

    JSP用过滤器解决request getParameter中文乱码问题

    (2)用过滤器解决request中文乱码问题。 (3)代码如下: package my; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class ChineseFilter implements Filter { //定义了一个...

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

    本文为大家分享了JSP用过滤器解决request中文乱码问题,具体内容如下 (1)客户端的数据一般是通过HTTP GET/POST方式提交给服务器,在服务器端用request.getParameter() 读取参数时,很容易出现中文乱码现象。 (2...

    servlet验证码制作和过滤器

    在做网站的时候经常会遇到一些问题,比如乱码问题和验证码问题,在这里有几个封装好的,做网站经常用到的东西

    JSP+Servlet+DBUtils

    3.使用Filter过滤器解决中文乱码问题 4.使用EL表达式配合JSTL(1.1.2),添加JSTL包 5.使用DBUtils1.6操作数据库,使用原生方法操作数据库 TUserDao使用JDBC TUserDaoEx使用Dbutils 6.扩展方法JsonResult自定义方法

    struts 常用过滤器

    中文乱码问题很头疼,但一个好的过滤器就可以解决问题啦

    字符过滤器

    jsp 中的字符过滤器,屏蔽网页中或JFreeChart中的乱码问题

    jsp传参 servlet接收中文乱码问题的解决方法

    毕竟数据是根本嘛,首先我用的是hibernate+servlet,但是在jsp页面传参到servlet的时候中文一直乱码,我尝试了好多方法,最后还是解决了。 第一,首先看清项目的编码,jsp页面的编码 第二,修改tomcat 下面的server....

    jsp+servlet实现增删改查

    jsp+servlet实现CRUD功能,ajax验证用户名,退出系统,数据库密码加密,过滤器解决中文乱码,实现分页功能,实现导出Excel等等功能。页面不是很美观、、、、

Global site tag (gtag.js) - Google Analytics