getParameter方法中文显示问号解决方法

来源:互联网 发布:网络主播崔佑欣揪痧 编辑:程序博客网 时间:2024/05/22 10:44

最大的原因就是tomcat8前面的版本默认编码是ISO-8859-1,tomcat 8之后默认编码是UTF-8,所以!!!!!!
当我们在java文件中或者过滤器中添加这行代码的时候,就会变成问号!!!!

new String(value.getBytes("ISO-8859-1"), "utf-8");

(具体原因看下面)


在写这篇文章写到一半,突然就想出了解决办法

原因是我使用了网上的过滤器jar包,里面有一句

//把ISO-8859-1编码的值变成utf-8value = new String(value.getBytes("ISO-8859-1"), "utf-8");value:就是我们传过来的中文ISO-8859-1:tomcat的默认编码

由于tomcat8默认编码是utf-8,而这个过滤器把他当成ISO-8859-1解码时,就会出现问题,导致所有中文变成问号

所以我们只需要不使用这个过滤器就可以了!!!!!


(这个是第一遍写一半的时候突然想到了原因所在,大家可以不用看,我只是留作第一次写博客的纪念)

这几天被 getParameter()方法,得到中文值显示的却是问号的问题烦恼了很久,百度了好久,所有答案都试过了都还是解决不了,所以特地发出一个比较另类的解决方法,如果有大神知道如何正确解决的,请在评论帮我们解惑,谢谢

前提(也就是我有设置这些东西还是没用):

jsp页面设置了UTF-8    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>tomcat设置了编码
0 0
原创粉丝点击