java web开发编码处理_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > java web开发编码处理

java web开发编码处理

 2014/4/4 18:46:43  wangboak  程序员俱乐部  我要评论(0)
  • 摘要:javaweb开发编码处理是一个比较头疼的问题。处理编码问题得分为两种情况:1、post请求2、get请求request.setCharacterEncoding("UTF-8");设置post请求中消息体中内容按照UTF-8编码格式解码。所以只能处理post请求的请求。一般通过编码过滤器都能解决。get请求就比较麻烦了,因为对于get请求,如果我们知道了get的编码方式(后台存在不知道是按照什么编码方式编码的情况,比如用户使用不同的浏览器直接复制了某个链接),那就得先解码,使用下面的方式
  • 标签:Web Java Web开发 开发 编码
java web开发编码处理是一个比较头疼的问题。
处理编码问题得分为两种情况:
1、post请求
2、get请求

request.setCharacterEncoding("UTF-8");设置post请求中消息体中内容按照UTF-8编码格式解码。所以只能处理post请求的请求。一般通过编码过滤器都能解决。


get请求就比较麻烦了,因为对于get请求,如果我们知道了get的编码方式(后台存在不知道是按照什么编码方式编码的情况,比如用户使用不同的浏览器直接复制了某个链接),那就得先解码,使用下面的方式:先使用原来的方式解码,在用UTF-8编码回后台程序的编码格式。为什么使用ISO8859-1屡试不爽呢?因为大部分浏览器默认的编码方式是ISO8859-1。
paramValue = new String(paramValue.trim().getBytes("ISO-8859-1"), "utf-8");

当然,对于get请求只能每次这么做吗?如果参数是多个,还不累死?
其实,也有两种方式:
1、修改tomcat的默认URL解码方式。告诉Tomcat按我配置的方式来编码吧...
class="java"><Connector port="8080" protocol="HTTP/1.1"    
           connectionTimeout="20000"    
           redirectPort="8443"    
           URIEncoding="UTF-8"  
 />

2、修改reguest对象默认的获取参数时的解码方式。这个就比较麻烦了...
具体可以参考一下博文:
http://lwfshr.iteye.com/blog/517918
发表评论
用户名: 匿名