linux下tomcat部署get请求乱码问题解决方法
2015-06-02 00:00
633 查看
摘要: linux下tomcat部署get请求乱码问题解决方法
默认情况下,Tomcat对请求采用的默认编码是ISO-8859-1, 这样我们提交的汉字被认为是ISO-8859-1的编码,所以在程序中接收时显示乱码 。 在过滤器中调用request.setCharacterEncoding("GBK"),那么Post上来的汉字将被认为是GBK编码,而 Tomcat5对于Get请求上来的编码并不根据过滤器的设定辨认编码方式,默认的依然是ISO-8859-1,所以,即使你的页面使用默认的编码方式进 行编码,然后使用ISO-8859-1进行解码,得到的结果也不对 。
解决方法:
在TOMCAT中的conf/server.xml中的<Connector中添加两个设置
useBodyEncodingForURI="true" //设置POST和GET使用相同编码
URIEncoding="UTF-8" //对URI使用utf-8编码处理
可以用String提供的编码转化测试,请求的参数值:
name = new String(name.getBytes("ISO8859-1"),"UTF-8").trim();
System.out.println(" name : " + name)
默认情况下,Tomcat对请求采用的默认编码是ISO-8859-1, 这样我们提交的汉字被认为是ISO-8859-1的编码,所以在程序中接收时显示乱码 。 在过滤器中调用request.setCharacterEncoding("GBK"),那么Post上来的汉字将被认为是GBK编码,而 Tomcat5对于Get请求上来的编码并不根据过滤器的设定辨认编码方式,默认的依然是ISO-8859-1,所以,即使你的页面使用默认的编码方式进 行编码,然后使用ISO-8859-1进行解码,得到的结果也不对 。
解决方法:
在TOMCAT中的conf/server.xml中的<Connector中添加两个设置
useBodyEncodingForURI="true" //设置POST和GET使用相同编码
URIEncoding="UTF-8" //对URI使用utf-8编码处理
可以用String提供的编码转化测试,请求的参数值:
name = new String(name.getBytes("ISO8859-1"),"UTF-8").trim();
System.out.println(" name : " + name)
相关文章推荐
- java-模拟tomcat服务器
- Linux socket 初步
- i-jetty环境搭配与编译
- 实现单Tomcat多Server配置
- 生产环境下的Tomcat配置
- 10 篇对初学者和专家都有用的 Linux 命令教程
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- Ubuntu Linux使用体验
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户
- Scientific Linux 5.5 图形安装教程
- 基于 Linux 集群环境上 GPFS 的问题诊断
- 谁是桌面王者?Win PK Linux三大镇山之宝