charsetfilter.java

来自「一个免费wap站」· Java 代码 · 共 46 行

JAVA
46
字号
package com.eline.wap.common.signon;

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;

/**
 * 正确处理程序中编码问题
 * @author Lucifer
 *
 */
public class CharsetFilter implements Filter {

	private FilterConfig config		= null;
	private String defaultEncode	= "UTF8";

	public void init(FilterConfig config) throws ServletException {
		this.config = config;
		if (config.getInitParameter("charset") != null) {
			defaultEncode = this.config.getInitParameter("charset");
		}
		System.out.println("defaultEncode\t= " + defaultEncode);
	}

	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		ServletRequest currentRequest = request;
		currentRequest.setCharacterEncoding(defaultEncode);
		chain.doFilter(currentRequest, response);

		if (request instanceof HttpServletRequest)
			System.out.println("CharsetFilter.doFilter() : url=" + ((HttpServletRequest) request).getRequestURI());
		else
			System.out.println("CharsetFilter.doFilter()...");
	}

	public void destroy() {
		this.config = null;
	}
}

⌨️ 快捷键说明

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