论坛登陆 用户名:  密 码:
设为首页  加入收藏
08年北京名校秋季招生
名牌院校免试入学宽进严出,突破考分限制,名校与你零距离,以下院校按报名先后顺序录取,24小时网上报名覆盖全国
  您现在的位置: 中国教育招生在线 >> IT >> JAVA认证 >> IT正文
J2EE WEB-Tomcat5.5.9中文问题解决方案
 作者:佚名     2007-3-14 17:12:42        来源:不详  浏览次数:

 

 

 

 

 

 

 

 

1、html

无论是独立的html,还是其他程序生成的,如Servlet等,注意在最终的html的和之间必须加入meta标签,用来指定html中输入字符的编码,如:

 

 
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  <title>测试GET && POST-Send</title>
  </head>
  

2、jsp和servlet

首先必须解决程序输出(如response.writeln(String s))和接受从客户端传来的数据(如request.getParameter(String sname))编码问题,我们可以利用文件过滤功能,具体需要所用的jsp/servlet容器或者服务器提供的功能设置,如在Tomcat5.5.9中可以在webapps/yourAppDirectory/WEB-INF/web.xml中设置如下:

 

 
  <filter>
  <filter-name>SetCharsetEncodingFilter</filter-name>
  <display-name>SetCharsetEncodingFilter</display-name>
  <description>Set CharsetEncoding Filter</description>
  <filter-class>com.gg.comm.web.SetCharsetEncodingFilter</filter-class>
  <init-param>
  <param-name>encoding</param-name>
  <param-value>gb2312</param-value>
  </init-param>
  </filter>
  <filter-mapping>
  <filter-name>SetCharsetEncodingFilter</filter-name>
  <url-pattern>/*</url-pattern>
  </filter-mapping>
  

其中SetCharsetEncodingFilter Class就是用来设置request和reponse字符编码的filter类,其中设置语句如下:

  

  request.setCharacterEncoding(targetEncoding);
  response.setContentType("text/html");
  response.setCharacterEncoding(targetEncoding);
  

另外为了解决通过get(url中带有参数)方式传递参数的乱码问题,我们还需要设置一下url传递参数所需要的编码,具体在Tomcat5.5.9中可以在${Tomcat_home}\conf\server.xml中的之间设置,如下:

  

  <!--
  URIEncoding="GBK":Force GET method String(Chinese) 
    can be transferd properly by http:uri
  
  note:Tomcat only support GBK specification,so not set charset gb2312
  -->
  <Connector URIEncoding="GBK" port="80" 
    redirectPort="8443" maxSpareThreads="75"  
    maxThreads="150" minSpareThreads="25">
  </Connector>
  

最后为了解决jsp的乱码问题,我们还需要作如下处理,即在左右的jsp头均加上如下指令:

  

  
    <%@ page contentType="text/html;charset=gb2312" language="java" %>
  或者
  <%@ page pageEncoding="gb2312"%>
  

3、JDBC和数据库

关于写入数据库和读取数据库数据的乱码问题,可以通过如下方式轻松解决:

对于JAVA程序的处理方法按我们指定的方法处理。

把数据库默认支持的编码格式改为GBK或GB2312的。

到此,一般来说对于WEB方式的应用来说,中文问题就可以解决了。当然以上方法是根据统一编码的原则解决的以及WEB方式的文件转换关系(file->class->load->execute or transfered or response or request)来做的。

(T117)


责任编辑:lss
  相关新闻
TreeView 控件应用详解
浅析J2EE应用服务器中间件
J2EE技术-漫谈EJB在Java中的应用
【J2EE综合】——使用JMS队列
J2EE探索者:用JMS进行企业消息传递
把您从麻烦中解脱的JNDI在J2EE中的角色
J2SE:六大代码问题检验你的Java知识
Oracle Peeking绑定变量的控制
用JSF与BEEHIVE PAGE FLOW开发WEB应用
专家讲述J2EE中的多字节字符的处理
Oracle Peeking绑定变量的控制
用JSF与BEEHIVE PAGE FLOW开发WEB应用
Look and Feel---JAVA界面(换肤术)
J2EE Frameworks介绍
“快”在细节 J2EE程序的性能优化技巧
在JSE环境中使用Hibernate EntityManger
J2EE持久层框架-JDO 2.0 最终投票通过
在JSE环境中使用Hibernate EntityManger
J2EE中使用EntityBean和JDO的优缺点分析
使用 Java EE 实现松耦合的SOA应用程序
  评论
现在有100人对本文发表评论
查看所有评论
 
推  荐
 
100本成功必读热销书
热门招生
  北京文理研修学院   前进大学
  北京明园大学   北京建设大学
  北京邮电大学世纪学院   北方工商管理学院
  联想软件定向委培班   香港数码动画学院
  青年企业管理研修学院   北京华夏管理学院
热门培训
网络化办公专家培训认证 电子科技大学软件学院
软件测试工程师培训认证 北大青鸟十大授权培训
IT硬件工程师培训认证班 北京环球雅思荷兰预科
JAVA开发工程师培训 潜能时代IT服务管理培训
网络信息化工程师培训 清华大学继续教育学院
论坛精选
 
有些细节是男人也该注意的风度!最容易读错的字
某强人手机里保存的30条短信 中国十大高薪职业
最感人的十大韩剧经典台词 嫁给工程师的N个理由
爆强!只有一句话的鬼故事 转贴教你如何做妖精
 女人一定要記住的話 女人最好别嫁给最爱的男人
城市联盟
 大连 上海 天津 广州 西安 深圳  天津  青岛  大连  福州  沈阳  青海  连云港  南京  吉林  厦门  威海  辽宁  呼和浩特
Copyright © 2006   www.edu999.com   All rights reserved. 中国教育招生在线  版权所有
北京市通信管理局[2004]字第552号函    京ICP证040442号