encodingfilter.java

来自「基本库存管理系统的框架 struts hibernate」· Java 代码 · 共 63 行

JAVA
63
字号
package com.strong.ims.struts.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;

/**
 * Encoding filter 
 * 编码过滤器 to GB2312(User Define)
 * 
 * --外加事务处理,Hibernate
 * @author jiang
 *
 */

public class EncodingFilter implements javax.servlet.Filter {
	
	private String encodingCharacter = "GB2312";
	private FilterConfig config;
	
	public EncodingFilter() {
		super();
		// TODO Auto-generated constructor stub
	}
	
	/**
	 * 初始化
	 */
	public void init(FilterConfig config) throws ServletException {
		// TODO Auto-generated method stub
		this.config = config;
		encodingCharacter = config.getInitParameter("encoding"); //user defined target encoding
		
	}
	
	/**
	 * 过滤
	 */
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
		throws IOException, ServletException {
		// TODO Auto-generated method stub
		//do encoding filter
		request.setCharacterEncoding(encodingCharacter);
		response.setCharacterEncoding(encodingCharacter);
		System.out.println("encoding filter-----------------"+ this.encodingCharacter);
		chain.doFilter(request,response);
	}
	
	/**
	 * 销毁
	 */
	public void destroy() {
		// TODO Auto-generated method stub
		this.config = null;
		this.encodingCharacter = null;
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?