解决Java J2EE乱码问题的方法

网友投稿 185 2023-07-19


解决Java J2EE乱码问题的方法

乱码是j2ee中一个比较常见的问题。遇到一两个问题的情况下,可以用new String(request.getParameter(xxx).getBytes("ISO-8859-1"),"UTF-8")来解决。遇到多的情况下,就最好用过滤器。

过滤器只需要注意2个地方即可——类和web.xml

1.在web.xml上面的发布如下:

SetCharsetEncodingFilter

SetCharacter

encoding

utf-8

SetCharsetEncodingFxRvWdgqilter

/*

2、过滤类

import java.ihttp://o.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;

public class SetCharacter implements Filter {

protected String encoding = null;

protected FilterConfig filterConfig = null;

protected boolean ignore = true;

public void init(FilterConfig arg0) throws ServletException {

this.encoding = arg0.getInitParameter("encoding");

String value = arg0.getInitParameter("imnore");

if (value == null) {

this.ignore = true;

} else if (value.equalsIgnoreCase("true")) {

this.ignore = true;

} else if (value.equalsIgnoreCase("yes")) {

this.ignore = true;

}

}

public void doFilter(ServletRequest arg0, ServletResponse arg1,

FilterChain arg2) throws IOException, ServletException {

if (ignore || (arg0.getCharacterEncoding() == null)) {

String encoding = selectEncoding(arg0);

if (encoding != null)

arg0.setCharacterEncoding(encoding);

}

arg2.doFilter(arg0, arg1);

}

private String selectEncoding(ServletReqxRvWdgquest arg0) {

return (this.encoding);

}

public void destroy() {

this.encoding = null;

this.filterConfig = null;

}

}

在web.xml文件中,以下语法用于定义映射:

1、以“/”开头和以“/*”结尾的是用来做路径映射。

2、以前缀“*.”开头的是用来做扩展映射。xRvWdgq

3、以“/”是用来定义default servlet映射。

4、剩下的都是用来定义详细映射。比如:/aa/bb/cc.action

以上就是解决Java J2EE乱码问题的思路,分享给大家,希望大家遇到类似问题可以顺利解决。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解Mybatis动态sql
下一篇:Java模拟有序链表数据结构的示例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~