Tomcat+Jsp环境下的中文问题

摘要:关于Java应用在处理中文时所存在问题的讨论已经相当多了,与大部分的讨论不同,本文将从汉字字符的输入和输出的角度来讨论Java语言处理中文时所存在的问题。
尽管关于Java在处理中文字符时所存在的问题的讨论已不乏其数,但由于Java技术涉及内容广(J2EE包含了十几种相关技术),技术供应商繁多,面向Java的Web服务器、应用服务器以及JDBC数据库驱动等都没有官方的标准,所以Java应用在处理中文时出了存在固有的问题外也会随着选用的服务器、驱动程序的不同产生一些与平台相关的问题。也就是说,在处理中文问题时,Java代码的可移植性打了折扣。
总的看来,Java的中文处理问题较为集中地出现在JSP技术应用和Java的数据库访问过程中。这是因为无论是JSP应用还是基于JDBC的数据库访问都涉及到了Java程序与另外一种应用系统的交互,这种交互不可避免的要求系统之间进行数据的交互和参数的传递,而Java处理中文出现问题的地方往往就是这些数据读入和输出的地方。
JSP程序所应该注意的中文问题
以Tomcat 3.2.1的JSP应用为例,一般遇到中文问题可以使用如下的编码强制转换函数进行内码的转换。
public static String toChinese(String strvalue)
{
try{
if(strvalue==null)
return null;
else
{
strvalue = new String(strvalue.getBytes("ISO8859_1"), "GBK");
return strvalue;
}
}catch(Exception e){
return null;
}

注意,在使用该函数前,我们需要分析中文无法正确输出的原因到底是什么,而不能将所有的中文处理的问题都用这个方法来解决。例如,如果是由于忘记将JSP的输出代码定义为GB2312或GBK而产生的中文无法正确输出就不能用这个函数来解决。一个好的习惯是在我们编写每一个JSP页面时都在文件的第一行定义程序所要输出的字符集,如
<%@ page contentType="text/html; charset=GBK" %>或
<%@ page contentType="text/html; charset=GB2312" %>
对于一些不支持定义输出的字符集的JSP版本,我们也可以作如下的设置:
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
另外还需要注意的是,这个函数是用来解决那些确实出现了无法正确输出中文的代码,而不是一个通用的用来保证中文字符正确输出的函数。由于中文字符无法正确的输出或读入的原因都是因为这个字符的编码和系统缺省的字符集编码(或者是应用所要输出的字符集,二者一般情况下是相同的)的不同引起的,所以在应用该函数前我们必须确定我们所要读入或输出的字符的编码到底与系统缺省的字符集编码是否相同。

(0)

相关推荐

  • window7下Tomcat7.0安装配置方法

    因为已经安装过jdk1.6,并且jdk的环境变量已经配置完成. 下面主要讲述Tomcat7.0的安装过程: 1.首先在http://tomcat.apache.org/download-70.cgi#7.0.30中下载"32-bit/64-bit Windows Service Installer" 1).一直下一步,中间需要选择安装路径和 JVM 目录,如果JDK和JRE安装没问题,这里他应该能自动找得到,否则需要你手动指定一下. 中间什么也不用管,有一部让你设置端口,不用动,保持默

  • tomcat环境变量详细配置步骤

    本文实例为大家分享了tomcat环境变量的配置教程,供大家参考,具体内容如下 1.===> 进入bin目录下,双击startup.bat看是否报错.一般肯定会报. 2.===> 右键我的电脑===>高级===>环境变量   新建一个 变量名为 JAVA_HOME 然后变量值是 你的JDK的bin目录的上一层. 再新建一个 变量名为CATALINA_HOME 变量值是你的Tomcat的bin的目录的上一层. 3.===> 进入Tomcat bin目录下  双击shutdown.

  • tomcat以及tomcat环境变量安装配置方法教程

    我们下载安装了tomcat,那么tomcat环境变量配置怎么配置?下面小编就和大家分享下tomcat环境变量的配置. tomcat安装版本 1.JDK:版本为jdk-7-windows-i586.exe    下载地址http://www.oracle.com/technetwork/java/javase/downloads/index.html 2.tomcat:版本为apache-tomcat-7.0.33-windows-x86.zip    下载地址http://tomcat.apac

  • win2003 jsp运行环境架设心得(jdk+tomcat)

    我的环境是win2003+jdk+tomcat,版本如下 JDK:jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe tomcat: apache-tomcat-6.0.35.exe 我只要这2个软件就可以,都不用创建环境变量什么的,我看过我的环境变量都没有.网络上都是抄来抄去,我这些都是自己实践出来的. 步骤: 1.先装JDK,如装在D:\JDK目录 2.第二再装tomcat,在装tomcat时,会自动找jdk目录,所以我们要先装jdk,不然

  • Tomcat7.0安装配置详细(图文)

    说明:Tomcat服务器上一个符合J2EE标准的Web服务器,在tomcat中无法运行EJB程序,如果要运行可以选择能够运行EJB程序的容器WebLogic,WebSphere,Jboss等 Tomcat的下载: http://tomcat.apache.org/ 1.进入上面的网站然后如下操作使用Window Service Installer(为Window 添加服务) 2.然后我们进行安装 说明一下: 以前的版本是没有关于Role的设定,到了7.0的时候就有有关的设定,这也说明Tomcat

  • Linux下Tomcat+Nginx服务器环境安装配置的简明教程

    一.安装 1.安装JDK 下载的jdk文件为:jdk-6u45-linux-x64.bin,执行如下命令进行安装: #./jdk-6u12-linux-i586.bin 2.安装tomcat: #tar zxvf apache-tomcat-6.0.18.tar.gz #mv apache-tomcat-6.0.29 tomcat 这里我将解压后的apache-tomcat-6.0.29重命名为了tomcat方便操作. 3.配置环境变量: 编辑/etc下的profile文件,加上如下内容: JA

  • Centos6.5下Jdk+Tomcat+Mysql环境安装图文教程

    系统环境:Centos6.5 64位 一. 安装java环境 这里安装的是jdk1.7.60 在/usr/local目录下创建java目录,可到oracle官网或镜像网站下载jdk-7u60-linux-x64.tar.gz,放到/usr/local/java中, cd /usr/local/java,执行解压: tar zxvf  jdk-7u60-linux-x64.tar.gz. 解压完成后配置JAVA_HOME,JAR_HOME环境变量.打开/etc/profile文件,命令:vi /e

  • eclipse配置tomcat开发Dynamic Web Project环境图解

    一.引子 习惯了MyEclipse的你是否曾想过基于Eclipse进行Dynamic Web Project项目开发呢?网上资料颇多,但是实践起来却发现总有这样那样的问题,设计Lucene搜索引擎项目的一个需要,重新搭建了一次环境,感触颇多,先总结下来,以备后用. 二.版本说明 2.1 Eclipse J2EE Eclipse Java EE IDE for Web Developers.Version: Kepler Service Release 1Build id: 20130919-08

  • Nginx+Tomcat的服务器端环境配置详解

    Nginx+tomcat是目前主流的java web架构,如何让nginx+tomcat同时工作呢,也可以说如何使用nginx来反向代理tomcat后端均衡呢?直接安装配置如下: 1.JAVA JDK安装: #下载相应的jdk软件包,然后解压安装,我这里包名称为:jdk-7u25-linux-x64.tar.gz tar -xzf jdk-7u25-linux-x64.tar.gz ;mkdir -p /usr/java/ ;mv jdk1.7.0_25/ /usr/java/ 下. #然后配置

  • Tomcat环境变量如何配置

    本文以文字的形式为大家叙述Tomcat环境变量的配置过程,以及验证配置是否成功的方法,具体内容如下 JDK环境变量配置:  如果你的JDK安装在C盘里,如:C:\Program Files\Java\jdk1.6.0_05,那么就在系统变量里(当然也可以在用户变量里)点新建:       变量名:JAVA_HOME       变量值:C:\Program Files\Java\jdk1.6.0_05;       再次点新建:       变量名:classpath       变量值:.;%

随机推荐