一下是过滤器处理tomcat 7 乱码问题
@WebFilter(" class MyWapper extends HttpServletRequestWrapper { // 定义成员变量 HttpServletRequest对象 (提升构造器中request对象的作用域) private HttpServletRequest request; public MyWapper(HttpServletRequest request) { super(request); this.request = request; } @Override public String getParameter(String name) { // 获取参数 (乱码的参数值) String value = request.getParameter(name); // 判断参数值是否为空 if (StrUtil.isBlank(value)) { return value; } // 通过new String()处理乱码 try { value = new String(value.getBytes("ISO-8859-1"), "UTF-8"); } catch (Exception e) { e.printStackTrace(); } return value; } } @Override public void destroy() { } }注意:高版本的chrome 浏览器默认编码是utf-8,tomcat7 的那一段判断版本的代码可以去掉,因为request.setCharacterEncoding("UTF-8")就已经设置成了编码解码方式,和浏览器一样,所以在取值的时候不会乱码。
注意:在获取request对象中的属性的时候,可以先判断是否为空,抛出异常,这样页面空白或者无法访问时容易定位bug位置。
注意:在filter 中请求转发只要复合过滤规则还会再次进入过滤器,再一次的条件注意要与请求转发的条件不同,避免死循环。
tomcat 空白页 没有任何信息的原因最有可能是:提交到的servlet 的参数缺省,或者是servlet里没有写收到请求并处理请求的对应函数。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)