JSP过滤器解决乱码

zhangpeng12340302 2012-04-22 01:48:37
求高手指导一下怎么用JSP过滤器解决乱码?
用的JSP+SQL SERVER 2000+TOMCAT环境,提交到数据库再显示出来就乱码,网上说设个过滤器,然后不知道过滤器怎么写,还有写了后添到哪,WEB.XML在哪添加相应的。

求高手解答啊
...全文
178 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
码无边 2012-04-27
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

楼主:
现在大部分WEB开发都采用UTF-8编码格式。
对于你说的过滤器解决中文乱码,我给你一个标准的实现方案。
1。在web.xml里加入过滤器,代码如下:
<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>
com.cib.cap.common.SetCharacterEncodingFilter
……
[/Quote]这方法可以试试。
沁子 2012-04-26
  • 打赏
  • 举报
回复
楼主:
现在大部分WEB开发都采用UTF-8编码格式。
对于你说的过滤器解决中文乱码,我给你一个标准的实现方案。
1。在web.xml里加入过滤器,代码如下:
<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>
com.cib.cap.common.SetCharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
2。文件SetCharacterEncodingFilter的代码如下:

package com.cib.cap.common;

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;

public class SetCharacterEncodingFilter
implements Filter
{
private FilterConfig jdField_if = null;
private String a = "ASCII";

public void init(FilterConfig paramFilterConfig)
throws ServletException
{
this.jdField_if = paramFilterConfig;
this.a = paramFilterConfig.getInitParameter("encoding");
}

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

public void doFilter(ServletRequest paramServletRequest, ServletResponse paramServletResponse, FilterChain paramFilterChain)
throws IOException, ServletException
{
HttpServletRequest localHttpServletRequest = (HttpServletRequest)paramServletRequest;
localHttpServletRequest.setCharacterEncoding(this.a);
paramFilterChain.doFilter(paramServletRequest, paramServletResponse);
}
}

ps:
1.把这个JAVA类SetCharacterEncodingFilter放到src下。
2.以上二步,可以实现你从html、jsp向action传入中文参数。无须转换,就可以获得此中文参数(String inputParm = request.getParameter("xxx");
),不会乱码。
「已注销」 2012-04-22
  • 打赏
  • 举报
回复
我前几周也刚刚学写了这个问题,这是我解决了问题之后自己总结的帖子,LZ看一下吧,注释还是比较详细的,希望能够帮到你。
http://blog.csdn.net/wkupaochuan/article/details/7461208
孤独人生 2012-04-22
  • 打赏
  • 举报
回复
这个就是写一个filter,在filter中对数据进行编码处理,设置成统一的编码
m540920181 2012-04-22
  • 打赏
  • 举报
回复
后台处理的程序使用的是神马啊?

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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