(Struts2解决篇)Struts2解决中文乱码问题

虾米姐 阅读:692 2021-04-01 10:26:46 评论:0

  第一步--有两种方法
    A、在src下面新建一个struts.properties,加入里面的内容为:
           struts.custom.i18n.resources=messagesource
           其中:struts.custom.i18n.resources为固定的,
             messagesource为自己定义的

     B、struts.xml里面添加
    <constant name="struts.custom.i18n.resources" value="messagesource"></constant>

A、B两种方法都能达到同样的效果(我亲自测试过)



第二步:
    在src下面新建一个messagesource_en_US.properties,其中messagesource为第一步中自定义的名称,
    加入里面的内容为您自己想要的内容,如:
    HelloWorld=Hello World!
    username = user name


第三步:
    在src下面新建一个messagesource_zh_CN.properties,其中messagesource是第一步中自定义的名称,
    加入里面的内容为第二步里面英文翻译后的中文(其他语言也可以,主要是达到一一对应),如
    HelloWorld=您好,世界!
    username = 用户


第四步:
    把messagesource_zh_CN.properties重新复制一份并重命名为messagesource.properties,
    把重命名后的messagesource.properties放到web-inf文件下面


第五步:中文转码
    找到jdk的安装目录--D:\Program Files\Java\jdk1.6.0_10\bin(我的安装目录)
        在bin里面找到native2ascii.exe并运行
        在命令窗口输入
    native2ascii -encoding UTF-8 messagesource.propertis messagesource_zh_CN.propertis



    这个命令的意思是,用utf-8对messagesource.propertis进行转码,转码后保存到messagesource_zh_CN.propertis文件



第六步:在jsp页面显示国际化语言--这里用两种方法得到国际化语言并显示
     

<!--文本框  --> 
  		<!--struts2 资源国际化  --> 
        <s:textfield name="username" key="username"/> 
        <s:textfield name="password" key="password"/>

第七步:相关结果的展示:

        

标签:Struts2
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号