文档章节

Java编码过滤器

IceRainYWC
 IceRainYWC
发布于 2015/04/02 13:42
字数 212
阅读 40
收藏 0

代码如下:

/**
 * 编码过滤器
 */
package com.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.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * @author Admin
 *
 */
public class EncodingFilter implements Filter {
	
	private FilterConfig filterConfig = null;
	private String targetEncoding = "UTF-8";//默认系统过滤编码
	private boolean isEnabled = true;//是否启用编码过滤
	
	/**
	 * 编码过滤
	 */
	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {

		if (this.isEnabled) {// 使用编码过滤
			HttpServletRequest req = (HttpServletRequest) request;
			HttpServletResponse res = (HttpServletResponse) response;
			req.setCharacterEncoding(targetEncoding);
			res.setCharacterEncoding(targetEncoding);
		}
		chain.doFilter(request, response);
	}

	/**
	 * 过滤器初始化
	 */
	public void init(FilterConfig config) throws ServletException {
		this.filterConfig = config;
		String encoding = filterConfig.getInitParameter("Encoding").trim();
		this.targetEncoding = encoding.equals("")?this.targetEncoding:encoding;
		this.isEnabled = Boolean.valueOf(filterConfig.getInitParameter("Enabled"));
	}
	
	public EncodingFilter() {
	}

	public void destroy() {
	}
}

web.xml配置:

<!-- 编码过滤 -->
	<filter>
		<display-name>EncodingFilter</display-name>
		<filter-name>EncodingFilter</filter-name>
		<filter-class>com.map.pgis.popu.filter.EncodingFilter</filter-class>
		<init-param>
			<description>过滤字符编码</description>
			<param-name>Encoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
		<init-param>
			<description>是否启用编码过滤器</description>
			<param-name>Enabled</param-name>
			<param-value>true</param-value>
		</init-param>
	</filter>
	
	<filter-mapping>
		<filter-name>EncodingFilter</filter-name>
		<url-pattern>/EncodingFilter</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>EncodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>


© 著作权归作者所有

共有 人打赏支持
IceRainYWC
粉丝 13
博文 111
码字总数 49297
作品 0
石家庄
程序员
私信 提问
tomcat的编码设置 tomcat中文问题的解决

tomcat的编码设置tomcat中文问题的解决 第一,存文件必须以一种编码存;读文件也必须以一种编码读,如不特别设置,去系统默认的编码,中文windows为GBK编码。 从.java->.class过程是,先编写...

jiefalcon
2013/08/08
0
0
JSP中request.getParameter()乱码问题

【转】JSP中request.getParameter()乱码问题 博客分类: java中的字符编码 第一,存文件必须以一种编码存;读文件也必须以一种编码读,如不特别设置,去系统默认的编码,中文windows为GBK编码...

liango
2012/11/11
0
0
Spring Shiro CAS 客户端集成配置

如果不熟悉Shiro 和CAS的概念,可以在网上搜索一下这方面的资料, 在配置CAS客户端配置之前,首先要进行CAS服务端配置 配置之前需要引入一些jar包具体如下: (一)cas登录 web.xml配置 shir...

zbbmaster
2017/05/12
0
0
Apache Mina 网络通信

Apache Mina Server 是一个网络通信应用框架,也就是说,它主要是对基于TCP/IP、UDP/IP协议栈的通信框架(当然,也可以提供JAVA 对象的序列化服务、虚拟机管道通信服务等),Mina 可以帮助我...

Mr&Cheng
2013/01/20
0
0
eclipse maven创建servlet3.0项目

1、打开Eclipse4.2,新建一个Maven项目     1)选择maven的archetype为maven-archetype-webapp     2)填写项目信息   2、完善项目目录结构     1)手工添加 src/main/java、s...

开源中国搬砖小能手
2013/09/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Win10:默认的图片打开应用,打开图片时速度明显很慢的解决办法

首先,我们随便地打开一张图片。然后,点击右上角的三个小点,最后点击弹出菜单最下面的“设置”。如下图: 在“设置”中找到下面的“人物”,把它关掉就好了。 原来,默认情况下,Win 10的图...

LivingInFHL
40分钟前
2
0
js代码激发onchange事件,兼容谷歌火狐IE

var el = document.getElementsByName('role')[0]; el.value = '3'; var evt = document.createEvent("HTMLEvents"); evt.initEvent("change", false, true); el.dispatchEvent(evt);......

我退而结网
55分钟前
3
0
mysql客户端报错:libmysqlclient_16 not defined in file libmysqlclient.so.16

报错情况: 安装完mydumper之后(上一篇文章),登陆Mysql客户端报错:version libmysqlclient_16 not defined in file libmysqlclient.so.16 with link time reference 同样:mysql的其他客...

machogyb
今天
1
0
MySQL 数据库中间件 安装部署测试全过程

1、环境准备 1.1、操作系统环境 [root@MyCat conf]# uname -aLinux MyCat 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 2013 x86_64 x86_64 x86_64 GNU/Linux 1.2、关闭SELIN......

PeakFang-BOK
今天
6
0
Linux Mysql 安装

https://www.cnblogs.com/xinjing-jingxin/p/8025805.html

流氓兔-
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部