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)是设计和制造容易适应不同区域要求的产品的一种方式.它要求从产品中抽离所有的与语言,国家/地区和文化相关的元素.换言之,应用程序的功 ...
随机推荐
- SimpleDateFormat日期格式化
public class T { /** * @param args */ public static void main(String[] args) { // TODO Auto-generate ...
- hibernate--lazy(懒加载)属性
关联映射文件中<class>标签中的lazy(懒加载)属性 Lazy(懒加载):只有在正真使用该对象时,才会创建这个对象 Hibernate中的lazy(懒加载):只有我们在正真使用时,它 ...
- 演练:Office 编程(C# 和 Visual Basic)
https://msdn.microsoft.com/zh-cn/library/ee342218(v=vs.110).aspx PIA的全称是 primary interop assembly 主 ...
- Provider Pattern提供者模式和策略模式
http://www.codeproject.com/Articles/18222/Provider-Pattern Introduction Provider pattern is one of t ...
- Java开发之单例设计模式
设计模式之单例模式: 一.单例模式实现特点:①单例类在整个应用程序中只能有一个实例(通过私有无参构造器实现):②单例类必须自己创建这个实例并且可供其他对象访问(通过静态公开的访问权限修饰的getIns ...
- Git使用简介
git创建分支并直接切换到分支:git checkout -b name git提交分支到远程服务器: git push origin name/git push origin name:name ...
- MinGW GCC下sleep()函数问题
在MinGW GCC下编译带sleep()函数的测试程序,不管是包含了unistd.h头文件,还是stdio.h.stdlib.h头文件,就是找不到该函数的定义!在linux下,sleep()函数的头 ...
- 1287. Mars Canals(DP)
1287 水DP #include <iostream> #include<cstdio> #include<cstring> #include<algori ...
- LA 3890 (半平面交) Most Distant Point from the Sea
题意: 给出一个凸n边形,求多边形内部一点使得该点到边的最小距离最大. 分析: 最小值最大可以用二分. 多边形每条边的左边是一个半平面,将这n个半平面向左移动距离x,则将这个凸多边形缩小了.如果这n个 ...
- jfinal框架教程-学习笔记(一)
JFinal 是基于 Java 语言的极速 WEB + ORM 开发框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展.Restful.在拥有Java 语言所有优势 ...