`
shenjichao2009
  • 浏览: 96730 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

畅所欲言struts2的国际化

阅读更多

所谓的国际化支持,鄙人理解为页面能够支持多种语言的显示,比如:浏览器的语言编码为中文(zh_CN)则显示中文,浏览器的语言编码为英文(en_US)则显示为英文,即人们常说的i18n(Internationlization)。

下面我将从3个部分讲述我所理解的国际化:

<1>JSP页面的国际化:

   第一种情况

   首先我们建立两个全局的国际化资源文件(放在src根目录下),支持英文(globalMessage_en_US.properties)和中文(globalMessage_zh_CN.properties),其中globalMessage在struts.xml文件中声明。

struts.xml文件:

  <struts>

     <constant name="struts.custom.i18n.resources"  value="globalMessage"/>

  </struts>

 globalMessage_en_US.properties文件:

 addUser = Add User

 globalMessage_zh_CN.properties文件:

 addUser = 添加用户

 register.jsp页面:

 <s:text name="addUser"></s:text>

 

 第二种情况

 使用临时文件资源,在src根目录下建立2个文件temp_en_US.properties(支持英文)和temp_zh_CN.properties(支持中文),这种情况下,用户可以在JSP页面中传递参数。

 temp_en_US.properties文件:

 addUser = Add User,{0}

 temp_zh_CN.properties文件:

 addUser = 添加用户,{0}

 register.jsp页面:

 <s:i18n  name="temp">

<s:text name="addUser">

   <s:param>信息</s:param>

</s:text>

 </s:18n>

注意:<s:i18n>标签中的name属性是与该临时文件所在的目录有关的,若temp_en_US.properties和temp_zh_CN.properties在src下的com.struts2.i18n包中,那么name="com.struts2.i18n.temp"。

第三种情况

JSP页面中的表单字段国际化,form中的theme属性必须不能设定为simple

register.jsp页面:

<s:form action="register">

   <s:textfield  name="username"  key="username"></s:textfield>

</s:from>

在globalMessage_en_US.properties文件中添加:

username = username

在globalMessage_zh_CN.properties文件中添加:

username = 用户名

<2>Action类的国际化:

   首先建立2个包级别的属性文件:package_en_US.properties(支持英文)和package_zh_CN.properties(支持中文)

  

  package_en_US.properties文件:

  username.invalid = package username error

  Package_zh_CN.properties文件:

  username.invalid = 包级别的用户名错误

  RegisterAction.java文件:

  if(null == this.getUsername() || "".equals(this.getUsername().trim()))

  {

    this.addActionError(this.getText("username.invalid"));

  }

  else if(this.getUsername().trim().length >12 || this.getUsername().trim().length() < 6)

  {

    //此句是当找不到资源文件中key时,用后面的字符串来代替显示在JSP页面中

this.addActionError(this.getText("username","用户名错误"));

/***********

****通过List传递参数

*****/

List list = new ArrayList();

list.add(username);

this.addActionError(this.getText("username.invalid",list));

//通过数组传递参数

this.addActionError(this.getText("username.invalid",new String[]{username}));

  }

<3>验证框架xml文件的国际化:

   建立2个类级别的资源文件RegisterAction_en_US.properties(支持英文)和RegisterAction_zh_CN.propertie(支持中文)

  

   RegisterAction_en_US.properties文件:

   username.xml.invalid = class username error

   RegisterAction_zh_CN.properties文件 

   Username.xml.invalid = 类级别的用户名错误

   RegisterAction-validation.xml验证文件:

   <field-validator  type="stringlength">

      <param  name="minLength">6</param>

      <param  name="maxLength">12</param>

      <message  key="username.xml.invalid"></message>

   </field-validator>

  

<4>比较:

   全局属性文件、包级别属性文件、类级别属性文件

   范围程度:

   全局属性文件>包级别属性文件>类级别属性文件

   作用程度:

   全局属性文件<包级别属性文件<类级别属性文件

<!--EndFragment-->
分享到:
评论

相关推荐

    初中语文语文论文让学生畅所欲言

    在当代初中语文教学中,鼓励学生在作文中“畅所欲言”,意味着要尊重并激发学生的个性与情感,引导他们自由地表达内心真实的声音。作文不仅是语文教学的核心之一,更是学生自我表达和情感宣泄的平台。因此,如何在...

    畅所欲言:古今燃料的变化.ppt

    畅所欲言:古今燃料的变化.ppt

    SpringBoot 就业信息管理系统:多维度就业数据分析与可视化呈现

    置身信息化的滚滚浪潮,智能化、系统化已然成为管理系统的“标配”,就业信息管理领域同样亟待革新。当下,国内大多还依赖人工处理海量就业信息,可随着市场一路高歌猛进、信息量呈爆炸式增长,传统人工模式弊端尽显...

    信息化系统使用意见征集表发放登记表.docx

    科室工作人员可以在这里畅所欲言,提出实际操作中遇到的各类问题,如系统运行缓慢、数据同步不及时等,也能够提出增加新功能模块的建议。这些反馈对于医院信息化系统的持续改进至关重要。 在现代医疗环境中,以用户...

    畅所欲言光通信——第二届光通信技术与市场研讨会精彩发言摘要.pdf

    在这场云集了诸多行业精英的盛会上,光网络的利用率、网络调度、业务需求多样化、网络智能化以及市场规范成为大家关注的焦点。随着光纤通信网络的快速发展,光通信技术的进步为信息的高速传输提供了可能,但同时也...

    湖南省常德市九年级政治上册 1.3面向世界的眼光教案 湘教版.doc

    3. 畅所欲言:让学生表达对国际援助的看法,激发他们的同情心和责任感。 【课堂总结】 回顾本节课的学习内容,强调全球观念的重要性,同时复习第一单元的知识点。 【课堂练习与作业】 1. 安排复习练习,检验学生对...

    专业技术人员知识创造与经营考试答案参照.pdf

    2. 组织创造知识的过程分为五个阶段:知识的共享(暗默知识的交流)、创造概念(提出新想法)、验证概念(检验概念的可行性)、建造原型(构建实体模型)和知识的利用(将知识应用于实践中)。 3. 丰田式生产管理...

    教师资格证结构化及试题答案.docx

    班主任可以围绕“胜败乃兵家常事”这一主题,组织一次富有启发性的班会,让学生们畅所欲言,分享自己对比赛的感受和看法。在这一过程中,班主任应强调,比赛的目的不仅是为了获胜,更在于参与和挑战的过程,以及从...

    2022继续教育网上学习《专业技术人员创新与经营》考试答案实用.pdf

    10. 国际知识产权保护:中国积极参与国际知识产权保护,加入了多个国际公约,如世界知识产权组织、《巴黎公约》、《专利合作条约》等。 11. 知识产权侵权救济:当知识产权受到侵犯时,可通过和解、诉讼或仲裁、行政...

    脱单盲盒交友盲盒系统3套公众号+小程序源码.zip

    盲盒约会应用亮点: 1、 你对朋友说的任何话都受隐私保护,不同的话题可以在...1、 让陌生人更好地了解对方,能够以各种方式畅所欲言,这很简单; 2、 如果你能在这里找到真爱,那也是一件幸福的事,告别单身并不难。

    2015_2016学年高中语文12我有一个梦想课后反思素材2新人教版必修2

    - 教学过程中注重培养学生的个性和思维能力,提供充分的表达空间,让学生能够在课堂上畅所欲言,促进全面发展。 2. **教学目标与重点**: - 三维目标(知识与技能、过程与方法、情感态度价值观)得到较好落实,...

    江西省档案馆推出小程序预约查档.pdf

    在回顾和展望档案馆的发展过程中,与会的老领导、老同志们畅所欲言,共同追忆了档案馆从无到有的光辉历程。他们提出,档案工作是一项涉及法制性、专业性、行政性、文化性、学术性、应用性等多个方面的综合工作,不能...

    2022企业人事个人工作计划.docx

    1. **构建开放的沟通环境**:鼓励员工提出自己的意见和建议,并为他们提供一个安全、开放的平台,让他们能够畅所欲言,共同推动企业文化的建设和业务的发展。 2. **加强跨部门协作**:通过组织团队建设活动或跨部门...

    幼儿园述职报告十篇.docx

    2. **群策群力建设**:管理者需重视每位教师的意见和建议,通过定期召开园务会议等方式,确保教师们能够畅所欲言,从而更好地促进保教质量的提升。 3. **提高保教质量**:通过给予教师自主权和支持,鼓励他们根据...

    SSM 框架下 Vue 驱动的微博系统构建方案

    身处信息时代,信息的宣传管理至关重要,实现分享交流信息的计算机化、系统化势在必行。 微博系统网站应运而生,它依托 MySQL 构建数据表存储信息,采用 SSM 框架与 Java 语言编写代码,并遵循规范的软件设计流程...

    第6周-牟秋宇-工作日志1

    在一个多小时的讨论中,团队成员们畅所欲言,对评审过程中发现的问题进行了深入分析和探讨。通过这种集体智慧的碰撞,不仅增强了团队成员间的沟通和理解,还能够发现和解决问题,提升项目质量。 在工作日志中,我们...

    高效精准运行:Spring Boot 打造大学生体质测试管理新样板

    在健康备受瞩目的当下,大学生体质测试管理愈发关键。为让测试管理更高效、便捷,大学生体质测试管理...多方联动,全方位覆盖大学生体质测试各环节,基本实现了信息的精细化、智能化管理,为高校体质测试工作筑牢根基。

    互联网企业员工的激励原则.ppt

    2. 无边界管理:互联网企业倾向于无边界管理,鼓励畅所欲言的工作氛围。 3. 团队型组织:互联网企业多数是团队型组织,具有工作强度高、创新速度快、知识更新快、员工淘汰率高的特点。 三、互联网企业员工的需求 ...

Global site tag (gtag.js) - Google Analytics