jsp过滤器输汉字,struts架构

来源:百度知道 编辑:UC知道 时间:2024/05/24 06:13:37
过滤器:public class CharSetFilter implements Filter {
private String encoding=null;

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

}

public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest req=(HttpServletRequest)arg0;
HttpServletResponse res=(HttpServletResponse)arg1;
req.setCharacterEncoding("UTF-8");
arg2.doFilter(req, res);
}

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

}

}

web.xml:
<filter>
<filter-name>charset</filter-name>
<filter-class>com.inspur.CharSetFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>charset</filter-name>
<

是mysql数据库吗,那是数据库的原因应该,楼主补充下是mysql我在告诉你解决方法
——————————————————————————
插入的时候把插入的数据这样转码试试
假如你要插入
String charu="姓名";
Stirng newcharu=new String(charu.getBytes("UTF-8"),"ISO-8859-1");
或者
Stirng newcharu=new String(charu.getBytes("ISO-8859-1"),"UTF-8");
然后插入这个newcharu试试楼主

request.setCharacterEncoding("GBK")
在你的action里面加这个代码就好了
一般做项目的话都是 加一个过滤器 然后里面再加这个代码的

从页面上添加请求的时候最好加个转码类..这样可以转码不会出错!应该是请求的时候出错.在请求那转码就行了!

看看你添加的那个页面的编码设置的有没有问题