jsp中文乱码处理问题
2010-11-05 09:53
302 查看
其实,java系统内部会把全部的字符串统一使用UTF-8编码,而在内部转化之前会使用操作系统默认的编码,其中包括输入和输出。要想不乱码,只需要
“统一java系统的输入、输出以及操作系统的字符集”,这也是处理java系统汉字的一个原则。原因是由于java的跨平台特性,字符集必须由具体的操
作系统给出。
由此可以得到一个最简单的解决jsp乱码的办法,其中主要需要把握三个环节:
1、开发和编译代码时就指定一个字符集,比如ISO-8859-1(西方的系统多数使用这个)
2、确定操作系统的字符集跟1统一,比如也用ISO-8859-1,这样的OS有很多,linux就是啦
3、如果开发jsp,每个页面都明确指定字符集:
<%@ page contentType="text/html;charSet=ISO8859-1" %>
这样就达到了前面的目标,统一了三者的字符编码。
这样的系统虽然很好,没有乱码问题,但是显然是以破坏跨平台特性为代价换取来的。想要根本解决问题,看来只有将java系统统一为UTF-8编码,这需要找到所有的出入口。
具体需要注意以下几个环节:
1、开发和编译时候指定字符集为UTF-8
2、用过滤器将所有请求转为UTF-8字符集编码
如果是用一个servlet控制分配的就在servlet的filter中写
request.setCharacterEncoding("UTF-8")
如果是用jsp页面,就在头部定义
<%@ page contentType="text/html;charSet=UTF-8" %>
3、在所有的输出上包括数据库连接上都指定使用字符集UTF-8
另外:如果你在做二次开放,就需要重新编译包,指定使用UTF-8编码
附:在编译时指定字符集的语法是javac -encoding <encoding> <sourcefile>
说明:这里很多观点是引用他人的,但是我自己使用过,是绝对有效的解决办法。
“统一java系统的输入、输出以及操作系统的字符集”,这也是处理java系统汉字的一个原则。原因是由于java的跨平台特性,字符集必须由具体的操
作系统给出。
由此可以得到一个最简单的解决jsp乱码的办法,其中主要需要把握三个环节:
1、开发和编译代码时就指定一个字符集,比如ISO-8859-1(西方的系统多数使用这个)
2、确定操作系统的字符集跟1统一,比如也用ISO-8859-1,这样的OS有很多,linux就是啦
3、如果开发jsp,每个页面都明确指定字符集:
<%@ page contentType="text/html;charSet=ISO8859-1" %>
这样就达到了前面的目标,统一了三者的字符编码。
这样的系统虽然很好,没有乱码问题,但是显然是以破坏跨平台特性为代价换取来的。想要根本解决问题,看来只有将java系统统一为UTF-8编码,这需要找到所有的出入口。
具体需要注意以下几个环节:
1、开发和编译时候指定字符集为UTF-8
2、用过滤器将所有请求转为UTF-8字符集编码
如果是用一个servlet控制分配的就在servlet的filter中写
request.setCharacterEncoding("UTF-8")
如果是用jsp页面,就在头部定义
<%@ page contentType="text/html;charSet=UTF-8" %>
3、在所有的输出上包括数据库连接上都指定使用字符集UTF-8
另外:如果你在做二次开放,就需要重新编译包,指定使用UTF-8编码
附:在编译时指定字符集的语法是javac -encoding <encoding> <sourcefile>
说明:这里很多观点是引用他人的,但是我自己使用过,是绝对有效的解决办法。
相关文章推荐
- 一个将html文件批量转换成jsp文件的程序(主要处理中文乱码问题)
- 处理jsp中文乱码问题(过滤器处理)
- action接收到来自jsp页面的请求时出现中文乱码问题处理方法
- jsp中文乱码问题处理方法
- spring mvc 访问不同的目录下的jsp视图及处理POST请求参数中文乱码问题
- JSP 中文乱码问题的处理解决方案
- 处理jsp中文参数传递乱码问题
- JSP页面中文乱码问题处理
- Jsp以get方式提交中文及特殊字符,javascript处理乱码问题
- 处理JSP中文跨页面间传参乱码的问题有两种方法实现方法(每个搞JSP的最常遇到的问题之一) 实例版:)
- 利用Filter类处理jsp页面中的中文乱码问题
- jsp,struts处理中文乱码问题
- putty 中文乱码问题处理
- jsp传参到servlet中文乱码处理
- 成功解决JSP和Servlet的中文乱码问题
- OpenGrok在Windows处理UTF-8编码无BOM信息的源代码时,中文注释显示为乱码的问题
- 网页乱码 UTF-8与GB2312 及 JSP中文问题
- springmvc mybatis mysql blob中文乱码问题处理
- JSP编写WAP输入中文乱码问题
- JSP中文字符串乱码问题