摘要: POST 方式下的解决方式还算简单,因为POST 方式下提交的数据都是以二进制的方式附加在http请求的body部分发送,只需要在后台指定编码格式就足矣解决。GET 方式下会将参数直接附加到url 后面,这部分参数无法使用request.setCharacterEncoding()处理,结果就是get形式的所有中文都变成了乱码。这时再也没有简便方法了,只能对这些中文一个一个进行转换,使用new String(bytes, "gb2312")进行转码。如我们所见,先从request 中获得参数,接着把字符串按照iso-8859-1编码打散成byte 数组,然后用 gb2312 阅读全文
posted @ 2013-06-22 12:10 午火39 阅读(638) 评论(0) 推荐(0)
摘要: 在 iso-8859-1,gb2312, utf-8 以及任意一种编码格式下,英文编码格式都是一样的,每个字符占8位,而中文就麻烦了,在gb2312 下一个中文占 16位,两字节,而在utf-8 下一个中文要占24位,三字节。浏览器在不知道确定编码方式的情况下,就会把这些字符从中间截断,再显示的时候就乱掉了。所以,想要解决乱码问题,就是要告诉浏览器我们到底使用了什么样的编码方式。为了获得正常显示的中文,需要注意以下几步:1. 因为服务器要先从本地读取jsp文件,然后经过处理后写入响应,所以我们首先要知道的就是 jsp文件的编码格式。从问题的源头着手解决。在咱们用的windowxp 下,文件默认 阅读全文
posted @ 2013-06-22 11:39 午火39 阅读(1017) 评论(0) 推荐(0)
摘要: 来源:http://blog.csdn.net/caozhongyan/article/details/6602759 本人使用的Tomcat版本为apache-tomcat-6.0.18(用的是解压包),解压路径为E:\apache-tomcat-6.0.18\apache-tomcat-6.0.18\,我如果部署在myEclipse里启动可以正常启动,当然也可以访问我的工程,但是如果我直接在tomcat源文件bin里启动startup.bat的话里变就给我显示:The JAVA_HOME environment variable is not defined correctlyThis e 阅读全文
posted @ 2013-06-22 11:27 午火39 阅读(729) 评论(0) 推荐(0)