filter with jsp?????

migo2008 2008-03-25 01:41:08
刚接触filter,问个弱弱的问题
Filter

/**
* 设置统一编码为gb2312
*/
import java.io.IOException;

import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class CharFilter implements javax.servlet.Filter {

public void destroy() {
// TODO Auto-generated method stub

}

public void doFilter(ServletRequest req, ServletResponse resp,
FilterChain chain) throws IOException, ServletException {
req.setCharacterEncoding("gb2312");
resp.setContentType("text/html;charset=gb2312");
chain.doFilter(req, resp);
}

public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub

}

}


color=#993300]Web.xml配置如下:[[/color]

<filter>
<filter-name>CharFilter</filter-name>
<filter-class>com.migo2008.servlet.CharFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CharFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


请问:
有了上面的代码后,JSP文件中还有没有必要加上

<%@ page contentType="text/html; charset=GB2312" %>

我没加上面这行代码,结果显示乱码!
我在过滤器中已经设置了request,response的字符集,为什么jsp页面还是显示乱码啊???
...全文
45 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
migo2008 2008-03-25
  • 打赏
  • 举报
回复
用户请求jsp后,jsp不是要编译成servlet吗?
我的过滤器将编译好的servlet通过dofilter()将编码设为"gb2312"传给用户,可不可以这么理解???
是不是jsp文件中的中文字符在编译成servlet的过程中将已经成为乱码了???
一步一个脚印 2008-03-25
  • 打赏
  • 举报
回复
补充一下.. *.jsp 会被编译成为servlet的

你尝试一下就知道了
ee4456 2008-03-25
  • 打赏
  • 举报
回复
这个是不一样的,一个是页面的,一个是传输请求过程中的。。。

67,541

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧