tomcat 字符编码解决方案
来源:互联网 发布:mysql 模糊查询 编辑:程序博客网 时间:2024/06/05 04:53
在进行web开发时,总是会遇到中文乱码的问题。大家可以参考我的“向数据库插入中文时乱码”http://blog.csdn.net/yiluxiangqian7715/article/details/45066365的博文。本来已经解决了中文乱码的问题,但最近又遇到一个问题:更换系统后按以前的方式设置好了各处的编码后,原来本来没问题的项目竟然出现了乱码问题,这个问题主要出现在get请求中。因此,在网上找到了一个解决方案。
在HTTP/1.1协议连接器配置上加上编码处理:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true"/>
useBodyEncodingForURI
:在默认情况下,该参数为false。useBodyEncodingForURI
是根据响应该请求的页面的request.setCharacterEncoding
参数对数据进行的重新编码(解码),不同的页面可以有不同的重新编码(解码)的编码。
另外还可以设置URIEncoding="指定编码"
,但不是很好的方法,如果tomcat有多个项目,每个项目编码不同,则行不通。
URIEncoding
和useBodyEncodingForURI
区别是,URIEncoding是对所有GET方式的请求的数据进行统一的重新编码(解码),而useBodyEncodingForURI则是根据响应该请求的页面的request.setCharacterEncoding参数对数据进行的重新编码(解码),不同的页面可以有不同的重新编码(解码)的编码。
所以对于URL提交的数据和表单中GET方式提交的数据,可以修改URIEncoding参数为浏览器编码或者修改useBodyEncodingForURI为true,并且在获得数据的JSP页面中request.setCharacterEncoding参数设置成浏览器编码。
说明:此处是默认大家其他地方的编码问题已经解决,如有问题可参照上面提到的博文。
附加解释:
1、pageEncoding="UTF-8"
的作用是设置JSP编译成Servlet时使用的编码。如果JSP文件是以GBK为编码保存的,而在JSP中却指定pageEncoding="UTF-8"
,会引起JSP内部定义的字符串为乱码。
2、contentType="text/html;charset=utf-8"
的作用是指定对服务器响应进行重新编码。
3、request.setCharacterEncoding("UTF-8")
的作用是设置对客户端请求进行重新编码。
4、response.setCharacterEncoding("UTF-8")
的作用是指定对服务器响应进行重新编码的编码。
- tomcat 字符编码解决方案
- wap项目:tomcat 字符编码解决方案
- Tomcat 字符编码问题
- Tomcat 字符编码的filter
- Tomcat Connector字符编码设置
- Tomcat服务器字符编码更改
- Java WEB 应用字符编码解决方案
- Java WEB 应用字符编码解决方案
- mysql中文字符编码乱码解决方案
- c/vc字符编码转换解决方案
- c/vc字符编码转换解决方案
- python字符编码错误的解决方案
- Tomcat 字符编码1 (转载)
- Tomcat环境下,字符编码的filter
- Tomcat环境下,字符编码的filter
- 设置Tomcat及Weblogic字符编码
- tomcat部署之字符编码问题
- maven tomcat插件 字符编码设置
- 邻接矩阵有向图 之 Java详解
- 【错误】netstart mysql服务正在启动或停止中,请稍候片刻后再试一次
- 使用maven 构建spring mvc项目
- Topcoder SRM661 ColorfulLineGraphs,数学组合问题+快速幂求解
- 黑马程序员_javaGUI编程
- tomcat 字符编码解决方案
- LeetCode Implement Stack using Queues
- hdu5386
- 利用两个栈实现队列的入队出队
- 借助江苏电信欢go进行流量推广活动合作的工作规范(一)
- 处理区间问题之树状数组与莫队算法
- 关于Android中的四大组件(AIDL Service的使用)
- hdu 1864 dp 01背包
- C语言 产生一些随机数 求最小值