package com.jp.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.HttpServletRequestWrapper;
public class GBKFilter implements Filter{
class Request extends HttpServletRequestWrapper{
public Request(HttpServletRequest request) {
super(request);
}
public String toGBK(String input){
try{
byte[] bytes=input.getBytes("iso8859-1");
return new String(bytes,"gbk");
}catch(Exception e){}
return null;
}
@Override
public String getParameter(String name){
return toGBK(getHttpServletRequest().getParameter(name));
}
@Override
public String[] getParameterValues(String name){
String[] values=getHttpServletRequest().getParameterValues(name);
if(values!=null){
for(int i=0 ; i<values.length ; i++){
values[i]=toGBK(values[i]);
}
}
return values;
}
public HttpServletRequest getHttpServletRequest(){
return (HttpServletRequest)super.getRequest();
}
}
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest httpRequest=(HttpServletRequest)request;
if(httpRequest.getMethod().equalsIgnoreCase("POST")){
request.setCharacterEncoding("GBK");
}else{
request=new Request(httpRequest);
}
chain.doFilter(request, response);
}
public void init(FilterConfig arg0) throws ServletException {
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
filter解决中文乱码.rar (15个子文件)
filter解决中文乱码
.project 1KB
.settings
.jsdtscope 500B
org.eclipse.jdt.core.prefs 330B
org.eclipse.wst.jsdt.ui.superType.container 49B
org.eclipse.wst.jsdt.ui.superType.name 6B
.mymetadata 327B
WebRoot
WEB-INF
web.xml 1KB
lib
classes
com
jp
servlet
TestServlet.class 972B
filter
GBKFilter$Request.class 2KB
GBKFilter.class 2KB
index.jsp 934B
META-INF
MANIFEST.MF 36B
.myeclipse
src
com
jp
servlet
TestServlet.java 511B
filter
GBKFilter.java 2KB
.classpath 362B
共 15 条
- 1
资源评论
- 无情何其多2014-05-04不是我想要的东西,想用过滤器的应该会试用吧
wangqianjiao
- 粉丝: 46
- 资源: 25
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功