li_chuansong
发贴: 55
积分: 21
|
于 2004-07-20 10:45
本文适用环境为:应用服务器weblogic7,数据库为oracle (为本人在实际工作中积累的一点经验,若对各位有点益处 ,请给与呼吁一下,加几分,便于能浏览和下载,学习更 多的内容,共同提高) 非常多的方法是介绍用对数据库中提取出的汉字用 java.net.URLDecoder.decode("数据库中汉字内容")进行解码, 对传递的参数中的汉字用java.net.URLEncoder.encode("")编码 在下一页面再用java.net.URLDecoder.decode("传递参数汉字内容") 解码实现。 对静态页面内容通过设置 <META http-equiv=Content-Type content=text/html;charset=GBK> 强制保证不乱码(不会因客户端工作站ie选用其他编码造成乱码)。 对jsp页面通过设置 <%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK"%> 强制保证不乱码。 上述设置方法对小的项目,页面较少,环境稳定的项目,还起一定作用, 但对大的项目,页面较多,全国推广的项目,上述方法表现出工作量大,若有一个页面 没注意,就会出现乱码,灵活性差,若环境一变,所有页面都的调整. 本文介绍通过WEB.XML和WEBLOGIC.XML控制实现不同环境页面字符集的控制,保证页面 不乱码,注意页面中无需上述任何配置,切忌。 1.oracle数据库后台字符集为中文,weblogic7所在的操作系统为中文: 在WEB.XML中配置如下(其他参数还是原先配置,在<web-app>中加入如下参数) <web-app>
<context-param> <param-name>weblogic.httpd.inputcharset./*</param-name> <param-value>GBK</param-value> </context-param>
</web-app> 在WEBLOGIC.XML中有如下配置 <weblogic-web-app>
<jsp-descriptor> <jsp-param> <param-name>encoding</param-name> <param-value>GBK</param-value> </jsp-param> </jsp-descriptor>
<charset-params> <input-charset> <resource-path>/*</resource-path> <java-charset-name>GBK</java-charset-name> </input-charset> </charset-params>
</weblogic-web-app> 2.oracle数据库后台字符集为英文,weblogic7所在的操作系统为中文: 在WEB.XML中配置如下(其他参数还是原先配置,在<web-app>中加入如下参数) <web-app>
<context-param> <param-name>weblogic.httpd.inputcharset./*</param-name> <param-value>8859_1</param-value> </context-param>
</web-app> 在WEBLOGIC.XML中有如下配置 <weblogic-web-app>
<jsp-descriptor> <jsp-param> <param-name>encoding</param-name> <param-value>8859_1</param-value> </jsp-param> </jsp-descriptor>
<charset-params> <input-charset> <resource-path>/*</resource-path> <java-charset-name>8859_1</java-charset-name> </input-charset> </charset-params>
</weblogic-web-app> 3.oracle数据库后台字符集为英文,weblogic7所在的操作系统为英文(多为UNIX操作系统且没打中文包): 在WEB.XML中配置如下(其他参数还是原先配置,在<web-app>中加入如下参数) <web-app>
<context-param> <param-name>weblogic.httpd.inputcharset./*</param-name> <param-value>GBK</param-value> </context-param>
</web-app> 在WEBLOGIC.XML中有如下配置 <weblogic-web-app>
<jsp-descriptor> <jsp-param> <param-name>encoding</param-name> <param-value>GBK</param-value> </jsp-param> </jsp-descriptor>
<charset-params> <input-charset> <resource-path>/*</resource-path> <java-charset-name>GBK</java-charset-name> </input-charset> </charset-params>
</weblogic-web-app> 4.oracle数据库后台字符集为中文,weblogic7所在的操作系统为英文(多为UNIX操作系统且没打中文包): 在WEB.XML中配置如下(其他参数还是原先配置,在<web-app>中加入如下参数) <web-app>
<context-param> <param-name>weblogic.httpd.inputcharset./*</param-name> <param-value>8859_1</param-value> </context-param>
</web-app> 在WEBLOGIC.XML中有如下配置 <weblogic-web-app>
<jsp-descriptor> <jsp-param> <param-name>encoding</param-name> <param-value>8859_1</param-value> </jsp-param> </jsp-descriptor>
<charset-params> <input-charset> <resource-path>/*</resource-path> <java-charset-name>8859_1</java-charset-name> </input-charset> </charset-params>
</weblogic-web-app>
|