Struts2的国际化
1.概述
指让一个具备国际化支持的应用程序支持某个特定的地区
国际化基础上的:
Locale 加载对应的资源文件
key 对应的消息
2.国际化的目标:
A、配置国际化资源文件:
Action 都可以访问该资源文件。注意:包范围资源文件的baseName就是package,不是Action所在的包名。
<constantname="struts.custom.i18n.resources" value="baseName"/>
struts.custom.i18n.resources=baseName
name 属性指定临时的国际化资源文件
⑤国际化资源文件加载顺序(离当前action较近的优先加载):
假设我们在某个ChildAction中调用了getText("username"):–(1)加载和 ChildAction的类文件在同一个包下的系列资源文件
ChildAction.properties–(2)加载 ChildAction 实现的接口
IChild,且和
IChildn在同一个包下
IChild.properties系列资源文件。–(3)加载 ChildAction父类
Parent,且和
Parent 在同一个包下的
baseName为 Parent.properties系列资源文件。–(4) 若 ChildAction实现
ModelDriven接口,则对于getModel()方法返回的model
对象,重新执行第(1)步操作。–(5) 查找当前包下
package.properties系列资源文件。–(6) 沿着当前包上溯,直到最顶层包来查找
package.properties的系列资源文件。–(7) 查找 struts.custom.i18n.resources常量指定
baseName的系列资源文件。–(8) 直接输出该key的字符串值。
B、如何在页面或Action中访问国际化资源文件的value值:
① 在Action类中,若action实现了TextProvide接口,则可以调用其getText() 方法获取资源文件中的value值
》通过继承ActionSupport类来实现此接口
② 在页面上,可以使用<s:text/>标签来访问资源文件中的属性;对于表单标签,可以使用表单标签的key属性值来获取
C、实现通过超链接切换语言:
① 关键在于 Stuts2是如何确定Local对象的
i18n 拦截器处理国际化,并且将其注册在默认的拦截器中
WW_TRANS_I18N_LOCALE属性
Struts2的国际化的更多相关文章
- 十四、Struts2的国际化
十四.Struts2的国际化 1.配置全局国际化消息资源包 配置全局消息资源包 <!--配置全局消息资源包 --> <constant name="struts.c ...
- JavaWeb框架_Struts2_(八)----->Struts2的国际化
这一篇博文拖了蛮久了,现在先把它完成,结束struts2这个版块,当然这只是最基础的部分,做项目还需要更深的理解.下一个web后端的版块准备做Spring框架的学习-嗯,加油! 1. Struts2的 ...
- struts2使用拦截器完成登陆显示用户信息操作和Struts2的国际化
其实学习框架,就是为了可以很好的很快的完成我们的需求,而学习struts2只是为了替代之前用的servlet这一层,框架使开发更加简单,所以作为一个小菜鸟,特别感谢那些超级无敌变态开发的框架供我们使用 ...
- struts2 资源国际化
web.xml: <?xml version="1.0" encoding="UTF-8"?><web-app id="WebApp ...
- Struts2的国际化入门
Struts2的国际化入门 Struts2国际化是建立在Java国际化的基础上的,一样是通过提供不同国家/语言环境的消息资源,然后通过ResourceBundle加载指定Locale对应的资源文件,再 ...
- 浅谈struts2的国际化----i18n
可能大家在使用struts框架的时候,偶尔会看到这个词: i18n.也就是 Internationalization i 开头,n 结尾. 总共18个字母,今天的主要内容就是环绕这 四个字母. ...
- 【Struts2】 国际化
一.概述 二.Struts2中国际化: 2.1 问题1 全局 局部 2.2 问题2 2.3 问题3 2.4 问题4 在Action中怎样使用 在JSP页面上怎样使用 一.概述 同一款软件 可以为不同用 ...
- (十四)struts2的国际化
一.国际化的概念 国际化是指web程序在运行时,根据客户端请求的国家.语言的不同而显示不同的界面. 例如,如果请求来自中文客户端,则页面的显示,提示信息等都是中文,如果是英文客户端,则显示英文信息. ...
- Struts2之国际化
时间:2017-1-11 11:12 --国际化Struts2已经对国际化进行了封装,我们只需要根据其提供的API进行访问即可.要使用国际化的Action必须继承ActionSupport.1.什么是 ...
- Struts2 internationalization(国际化)
1:什么是国际化? 国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式.它要求从产品中抽离所有的与语言,国家/地区和文化相关的元素.换言之,应用程序的功 ...
随机推荐
- Topcoder 练习小记,Java 与 Python 分别实现。
Topcoder上的一道题目,题目描述如下: Problem Statement Byteland is a city with many skyscrapers, so it's a pe ...
- Collection_Compare
冒泡 package com.bjsxt.sort.bubble; import java.util.Arrays; public class BubbleSort1 { /** * @param a ...
- Android开发之消息机制
转:http://stackvoid.com/introduction-to-Message-Handler-in-Android/ http://blog.dreamtobe.cn/2016/03/ ...
- topcoder srm 610 div2 250
第一次做tc 的比赛,一点也不懂,虽然题目做出来了, 但是,也没有在比赛的时候提交成功.. 还有,感谢一宁对tc使用的讲解.. 贴一下代码..... #include <cstring> ...
- css配合js模拟的select下拉框
css配合js模拟的select下拉框 <!doctype html> <html> <head> <meta charset="utf-8&quo ...
- Android平台调用WebService详解
上篇文章已经对Web Service及其相关知识进行了介绍(Android开发之WebService介绍 ),相信有的朋友已经忍耐不住想试试在Android应用中调用Web Service.本文将通过 ...
- Scrum&Kanban在移动开发团队的实践 (一)
现在大多数团队都在谈敏捷开发,似乎觉得敏捷是软件开发的银弹.只需要实践下一些敏捷开发的模式就能如何如何,其实我觉得不论是敏捷开发还是传统的瀑布流开发都是有他们的市场的,取决于团队人员构成,取决你的产品 ...
- ZOJ1311, POJ1144 Network
题目描述:TLC电话线路公司正在新建一个电话线路网络.他们将一些地方(这些地方用1到N的整数标明,任何2个地方的标号都不相同)用电话线路连接起来.这些线路是双向的,每条线路连接2个地方,并且每个地方的 ...
- 【web】web欢迎页面执行servlet
<!-- servlet名 --> <welcome-file-list> <welcome-file>Begin_page</welcome-file> ...
- 【DFS】NYOJ-325-zb的生日
[题目链接:NYOJ-325] 一道以我名字命名的题目,难道要我生日的时候再A? 思路:依旧深搜,但这个问题应该有一个专有名词吧,看别的博客说是 “容量为 sum/2 的背包问题”,不懂... // ...