首先,web.xml中不建议出现超出ASCII范围的字符

但是作为一点积累,简单举个例子如下,其核心代码就是new String(String.getBytes(charset_1), charset_2)

 public class SimpleFilter implements Filter {

     private boolean enable = false;

     public void init(FilterConfig config)
throws ServletException{
String enableString = config.getInitParameter("enable");
if (enableString != null && enableString.equalsIgnoreCase("true")) {
this.enable = true;
}
// 这个地方你如果从xml中读中文的话,读出来就是乱码
// 解决编码问题暂时可行的办法如下,但是这种方法的前提是你知道xml文件的编码情况,如果不是iso-8859-1你怎么办?
String initParam = config.getInitParameter("ref");
try {
initParam = new String(initParam.getBytes("iso-8859-1"), "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} System.out.println(this + ": init(), init-param = " + initParam);
}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException{
if (this.enable)
System.out.println(this + ": doFilter()") ;
chain.doFilter(request, response);
}
public void destroy(){
// clean up
} }
05-11 20:01
查看更多