过滤器(防止乱码)

 1 package cqvie.yjq.filter;
 2
 3 import java.io.IOException;
 4
 5 import javax.servlet.Filter;
 6 import javax.servlet.FilterChain;
 7 import javax.servlet.FilterConfig;
 8 import javax.servlet.ServletException;
 9 import javax.servlet.ServletRequest;
10 import javax.servlet.ServletResponse;
11 import javax.servlet.http.HttpServletRequest;
12 import javax.servlet.http.HttpServletResponse;
13
14 public class EncodingFilter1 implements Filter {
15
16     public void destroy() {
17
18     }
19
20     public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain chain)
21             throws IOException, ServletException {
22
23         //1.首先ServletRequest转换为HttpServletRequest
24         HttpServletRequest request = (HttpServletRequest) arg0;
25         //2.把ServletResponse转换为HttpServletResponse
26         HttpServletResponse response = (HttpServletResponse) arg1;
27         //3.得到当前的请求方式
28         String method = request.getMethod();
29         //4.判断
30         if(method.toUpperCase().equals("POST")) {
31             //是post请求时,处理乱码
32             request.setCharacterEncoding("UTF-8");
33             //放行
34             chain.doFilter(request, response);
35         } else {
36             chain.doFilter(request, response);
37         }
38     }
39
40     public void init(FilterConfig arg0) throws ServletException {
41
42     }
43
44 }

 1 <!-- 为了防止乱码,基于web.xml中的部分关于过滤器的配置 -->
 2 <filter>
 3       <filter-name>EncodingFilter1</filter-name>
 4       <filter-class>cqvie.yjq.filter.EncodingFilter1</filter-class>
 5   </filter>
 6
 7   <filter-mapping>
 8       <filter-name>EncodingFilter1</filter-name>
 9        <!-- 所有路径的文件 -->
10       <url-pattern>/*</url-pattern>
11   </filter-mapping>

web.xml

时间: 2024-08-02 14:52:04

过滤器(防止乱码)的相关文章

JavaWeb 后端 &lt;十二&gt; 之 过滤器 filter 乱码、不缓存、脏话、标记、自动登录、全站压缩过滤器

一.过滤器是什么?有什么? 1.过滤器属于Servlet规范,从2.3版本就开始有了. 2.过滤器就是对访问的内容进行筛选(拦截).利用过滤器对请求和响应进行过滤 二.编写步骤和执行过程 1.编码步骤: a.编写一个类:实现javax.servlet.Filter接口 public class FilterDemo1 implements Filter { public FilterDemo1(){ System.out.println("调用了默认的构造方法"); } //用户每次访

java web Filter过滤器解决乱码

package com.kt.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.Serv

乱码过滤器

WEB.XML中的配置: <!-- 过滤器 过滤乱码 -->     <filter>         <filter-name>characterEncodingFilter</filter-name>         <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>         <init-param&g

Servlet乱码处理-------续集

前记 今天,  又 学习了一种 通过过滤器处理乱码的方法.下面我阐述通过过滤器处理乱码的思路. 第一步.编写过滤器类,实现Filter接口!代码如下: 第二步.配置web.xml,代码如下:

Web应用解决中文乱码的两种方式

(1)第一种:常用的是我们自定义的过滤器 package com.lc.filter; //ctrl+shift+o 导入各种包 即可 /** * 过滤器的使用方法 * 在创建类的时候 要用到接口Filter * 要自己在web.xml文件中配置过滤器 * @author xuliugen * */ public class MyFilter extends HttpServlet implements Filter { private String encoding=null; public

Web配置字符乱码

<!-- 过滤器 过滤乱码 --> <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-n

spring mvc 解决后台传递值乱码问题

在Web-xml 配置添加过滤器 <!-- 配置过滤器 解决乱码问题 --> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>

JavaWeb-19 (JDBC之过滤器Filter)

JavaWeb-19 JDBC之过滤器Filter 一.Filter过滤器概述 Filter(过滤器):Web三大组件之一,就是对目标资源进行请求前或请求后. Filter也称之为过滤器,它是Servlet技术中最激动人心的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能.例如实现URL级别的权限访问控制.过滤敏感词汇.压缩响应信息等一些高级功能. 实际中:过滤器就相

中文乱码问题(页面乱码,eclipse乱码,请求响应乱码)

1.首先在开发工具eclipse中设置工作空间和文件编码格式,详情参见   http://www.cnblogs.com/lixiang1993/p/7345161.html 2.在eclipse的安装根目录下,打开eclipse.ini文件,在文件最后一行添加 " -Dfile.encoding=utf-8 " ,这样在eclipse中创建的文件就是以utf-8编码保存. 3.请求乱码问题 (1)解决get请求乱码问题:在tomcat根目录下,进入conf文件夹,打开server.x

记一次抓狂的乱码经历

常年Eclipse的守旧派久闻IDEA大名,终于在dalao的安利下入了IDEA的坑((才不是因为可以用翻译插件 入坑一段时间,因为在编码方面了解的还算比较多,平时基本没遇到过乱码问题,并且在第一次使用IDEA时就修改了设置中所有编码方式为UTF-8,直到最近做一个小小的javaweb项目,遇到了很奇怪的问题,平时本人都保持使用UTF-8的习惯,各种编辑器都是默认UTF-8编码,这次出问题的是两个html文档与两个js脚本,均为UTF-8编码,在本地使用浏览器打开时一切正常,但是放到IDEA中,