魔扣论坛

魔扣源码论坛业务
查看: 1138|回复: 6

Tomcat+Jsp环境下的中文问题

[复制链接]
  • TA的每日心情

    2018-10-28 00:07
  • 签到天数: 21 天

    [LV.4]神出鬼没

    154

    主题

    0

    回帖

    160

    积分

    初级魔扣

    Rank: 2

    魔扣币
    2
    贡献
    2
    威望
    4
    发表于 2016-12-28 15:02:05 | 显示全部楼层 |阅读模式
    魔扣币兑换比例:【 50以下 : ¥1 = 10 魔扣币 】丨【 50 - 100 :¥1 = 20 魔扣币】丨【 100以上:¥1 = 30 魔扣币 】

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    摘要:关于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页面时都在文件的第一行定义程序所要输出的字符集,如


    对于一些不支持定义输出的字符集的JSP版本,我们也可以作如下的设置:

    另外还需要注意的是,这个函数是用来解决那些确实出现了无法正确输出中文的代码,而不是一个通用的用来保证中文字符正确输出的函数。由于中文字符无法正确的输出或读入的原因都是因为这个字符的编码和系统缺省的字符集编码(或者是应用所要输出的字符集,二者一般情况下是相同的)的不同引起的,所以在应用该函数前我们必须确定我们所要读入或输出的字符的编码到底与系统缺省的字符集编码是否相同。

    该用户从未签到

    2

    主题

    261

    回帖

    524

    积分

    高级魔扣

    Rank: 4

    魔扣币
    261
    贡献
    261
    威望
    0
    发表于 2017-1-14 06:45:50 | 显示全部楼层
    高手云集 果断围观

    该用户从未签到

    4

    主题

    250

    回帖

    504

    积分

    高级魔扣

    Rank: 4

    魔扣币
    250
    贡献
    250
    威望
    0
    发表于 2017-3-13 09:06:20 来自手机 | 显示全部楼层
    占坑编辑ing

    该用户从未签到

    1

    主题

    269

    回帖

    539

    积分

    高级魔扣

    Rank: 4

    魔扣币
    269
    贡献
    269
    威望
    0
    发表于 2017-7-27 06:23:55 来自手机 | 显示全部楼层
    山海可以阻隔彼此,却阻隔不了我的思念;距离可以拉开你我,却拉不开真挚的情谊,时间可以淡忘过去,却忘不了魔扣源码论坛永远的朋友。时光,带着美丽行走,那些过往,永远铭记。岁月为我沉淀下来的,是带着浓郁花香的美好。

    该用户从未签到

    2

    主题

    274

    回帖

    550

    积分

    高级魔扣

    Rank: 4

    魔扣币
    274
    贡献
    274
    威望
    0
    发表于 2017-12-4 12:43:49 来自手机 | 显示全部楼层
    我的祝福是一只蝴蝶,随风儿飘到你的枕边,做个好梦,把明天的承诺兑现!如果你有烦恼,我就陪你一个夜晚;只要你开心,我随时陪在你的身边!闭上眼睛,送你一份甘甜,张开双臂,拥你一份浪漫!魔扣源码论坛祝福亲爱的朋友:永远开心!永远灿烂!

    该用户从未签到

    1

    主题

    280

    回帖

    563

    积分

    高级魔扣

    Rank: 4

    魔扣币
    282
    贡献
    282
    威望
    0
    发表于 2018-6-22 17:13:58 | 显示全部楼层
    1v1飘过

    该用户从未签到

    2

    主题

    244

    回帖

    490

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    244
    贡献
    244
    威望
    0
    发表于 2018-12-9 10:00:22 来自手机 | 显示全部楼层
    沙发???
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    • 联系我们
    • 新浪微博 :
    • 在线客服 :魔扣科技 
    • 源码QQ群 :魔扣源码论坛官方总群
    • 联系邮箱 :charlin#morko.net
    • 微信扫一扫
    快速回复 返回顶部 返回列表