struts 国际化及i18n拦截器原理

标签: struts 国际化 i18n | 发表时间:2015-03-13 17:46 | 作者:cax_2014
出处:http://www.iteye.com

1.在struts2中可以使用标签<s:text name=""/> 和<s:textfiled key=""/>获取国际化资源信息,如果带有占位符使用<s:param name=""/>来提供参数。

2.多种资源文件配置方式:

1.全局资源文件配置,在struts.xml中struts.custom.i18n.resources设置资源文件名称,如

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

 则对应的资源文件是:i18n.properties,i18n_zh_CN.properties,i18n_en_US.properties;统一放在src目录下。

 

2.Action资源文件,跟action放在同一个目录下,命名规则是:ChildAction.properties

3.package资源文件,命名规则是:package.properties

 

访问规则:action>package>全局

 

原理:struts2通过i18n拦截器来实现国际化,以下3种情况

1)如果请求带有request_locale参数,把request_locale转换成locale, 保存到session中,key为: WW_TRANS_I18N_LOCALE,使用该locale作为国际化。

2)如果请求带有request_only_locale参数,把request_only_locale转换成locale,使用该locale作为国际化。

3)如果请求中不带有request_locale或request_only_locale,则从session中找key为 WW_TRANS_I18N_LOCALE的locale,

如果在session中找到了,直接使用该locale;如果没找到,则从ActionContext中获取locale(即为从浏览器中获取locale)

 

流程图:


 

 

 

 



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [struts 国际化 i18n] 推荐:

struts 国际化及i18n拦截器原理

- - 企业架构 - ITeye博客
1.在struts2中可以使用标签获取国际化资源信息,如果带有占位符使用来提供参数. 2.多种资源文件配置方式:. 1.全局资源文件配置,在struts.xml中struts.custom.i18n.resources设置资源文件名称,如.

Struts导出word

- - CSDN博客Web前端推荐文章
 * @param tableSize 多少列(列数). // 设置 Table 表格. aTable.setWidths(width);// 设置每列所占比例. aTable.setWidth(100); // 占页面宽度 90%. aTable.setAlignment(Element.ALIGN_CENTER);// 居中显示.

Struts标签详解

- - CSDN博客推荐文章
数据标签主要用于提供各种数据访问相关的功能,比如显示一个Action里的属性,以及生成的国际化输出等. Struts2数据标签主要分为以下几种:. property:用于生成输出某个值 值包:valueStack、StackContext和ActionContext中的值. bean:该标签用于创建一个JavaBean实例,如果指定了id属性,则可以将创建的Javabean实例存放入Stack Context中.

Struts 2的Action讲解

- - CSDN博客编程语言推荐文章
三、Struts 2的Action讲解. 有Struts 1.x经验的朋友都知道Action是Struts的核心内容,当然Struts 2.0也不例外. 不过,Struts 1.x与Struts 2.0的Action模型很大的区别. 必须继承org.apache.struts.action.Action或者其子类.

Apache Struts 1宣告退出舞台

- - InfoQ cn
近日,Apache官方网站发布了关于Apache Struts 1 EOL(End-Of-Life) 新闻稿及 通告. 该新闻稿指出,2013年4月5日,Apache Struts项目团队正式通知广大开发者,Struts 1.x开发框架结束使命,并且官方将不会继续提供支持. Struts 1.x项目创建于2000年,最新版本1.3.10发布于2008年12月.

记录Struts从2.1.8升级2.3.15.3过程

- - ITeye博客
structs2爆远程命令执行漏洞,影响版本:Struts 2.0.0 - Struts 2.3.15 ,原来的Struts应用需要升级. Struts版本从2.1.8升级到2.3.15.3:. 直接替换Struts相关jar报错,需要注意:. struts2-*.jar全部由2.1.8 替换为 2.3.15.3版本.

Struts2之我见系列总结---- Struts接收参数的方式(2012.12.22)

- - CSDN博客推荐文章
1.  用Action 的属性接收参数. 使用Domain ModelModel接收参数. 使用DTO--DTO--数据传输对象接收参数. 使用 ModelDriven接收参数. 使用request 对象接收参数. 在action 里面定义要接收的参数,并提供相应的setter,getter,和提交参数的名称一致,并不用做数据类型的转换.

Java国际化:BreakIterator

- - 编程语言 - ITeye博客
【译自:http://tutorials.jenkov.com/java-internationalization/breakiterator.html , 不准确别怪我】. java.text.BreakIterator 类用来查找不同语言中的字符、单词和句子的边界. 因为不同的语言有不同的字、单词和句子的边界,所以只是查找空格、逗号、句号、分号和冒号是不够的.

基于 Struts 2 拦截器实现细粒度的基于角色的存取控制

- - 开源软件 - ITeye博客
原文参考:http://www.ibm.com/developerworks/cn/java/j-lo-struts2-rbac/. 本文介绍如何利用 Struts 2 拦截器来为 Java Web 应用添加应用管理的基于角色的存取控制(Role-Based Access Control,RBAC)的设计和实现方法.

京东 12G 用户数据泄露被证实,源自 2013 年的 Struts 2 安全漏洞

- - PingWest品玩
昨晚, 金融新媒体一本财经曝出了一条信息:一个 12G 的数据包开始在地下渠道流通,其中包括用户名、密码、邮箱、QQ号、电话号码、身份证等多个维度,数据多达数千万条. 而黑市买卖双方皆称,这些数据来自京东. 一本财经的记者获取了这个数据包,尝试根据部分用户名和破解的密码登陆,确实大部分可登陆京东账户.