?? charsetfilter.java
字號:
package com.yiboit.hhs.filter;
import java.io.IOException;
import java.util.Iterator;
import java.util.Map;
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 CharsetFilter implements Filter {
/** 保存用戶指定編碼 */
protected String encoding = null;
/**
* 初始化過濾器方法,由系統創建Filter時自動調用 把web.xml中用戶指定的編碼保存在本類的屬性中
*/
public void init(FilterConfig filterConfig) throws ServletException {
this.encoding = filterConfig.getInitParameter("encoding");
}
/**
* 執行過濾功能 將參數信息按指定的編碼進行轉換
*/
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException, ServletException {
Map parameterMap = req.getParameterMap();
if (!parameterMap.isEmpty()) {
Iterator it = parameterMap.keySet().iterator();
String value[] = null;
while (it.hasNext()) {
value = (String[]) parameterMap.get(it.next());
for (int i = 0; i < value.length; i++) {
value[i] = new String(value[i].getBytes("ISO-8859-1"),
encoding);
}
}
}
chain.doFilter(req, res);
}
/**
* 銷毀方法,在系統銷毀Filter之前由系統自動調用
*/
public void destroy() {
this.encoding = null;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -