Struts2教程10:国际化

国际化的作用就是根据不同国家的用户在访问Web或其他类型的程序时,将各种信息以本地的常用形式显示出来,如界面信息在中国,就会显示中文信息,在以英文为主的国家里,就会显示英文信息。还有就是一些信息的格式,如日期格式等。

从属性文件中获得字符串信息是国际化的基本应用。在Struts2中使用的属性文件就是Java属性文件,扩展名为properties。在Struts2中的属性文件可以有很多默认的位置,Struts2可按如下的顺序(或步骤)来定位属性文件:

1.ActionClass.properties:属性文件名和动作类同名。Struts2会首先查询与当前访问的动作类同名,并且和ActionClass.class在同一个目录下的属性文件。

2.BaseClass.properties:BaseClass表示动作类的基类。所有动作类都会查找Object.properties文件(因为Object是所有Java类的基类),但要注意的是Object.properties文件可不能放到当前动作类的目录中,由于Object在java.lang包中,因此,Object.properties要放到jdk包的java"lang目录中。而对于ActionSupport.properties文件,当然也不能放到动作类的当前目录中,由于ActionSupport类中com.opensymphony.xwork2名中,因此,需要将ActionSupport.properties文件放到xwork2.jar包中的com\opensymphony\xwork2目录中,由于放到jar文件中不太方便,因此,可以使一个和当前动作类在一个目录的类先继承ActionSupport,然后所有的动作类都继承于这个类。代码如下:

public class MyActionSupport extends ActionSupport
{
    ... ...
}
public class ActionClass extends MyActionSupport
{
    ... ...
}

这样的话,只要存在一个MyActionSupport.properties,在当前目录下的所有动作类都会读取这个文件。

3.Interface.properties:这类文件和BaseClass.properties类似,Interface表示动作类实现的接口。

4.如果动作类实现了ModelDriven, 那么重复第1步。

5.package.properties:大家要注意。这个文件就叫package.properties。不象Interface和BaseClass都是泛指。这个文件可以放到当前动作类的包的任何一层目录下。如当前动作类在action.test包中。那么package.properties可以放到action目录中,也可以放到action"test目录中。Struts2会从离动作类最近的位置开始查找package.properties文件。

6.搜索il8n资源信息

7.查找全局资源属性文件

如下面是一个动作类

package action.test;
import org.apache.struts2.*;
import com.opensymphony.xwork2.ActionSupport;
public class Internationalizing extends ActionSupport
{
    public String execute() throws Exception
    {
        return "forward";
    }
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索目录
, 文件
, 属性
, properties文件
, java struts2
, properties
, java struts2 action
, actionsupport
, struts2 0 国际化
, java actionsupport
, struts2.0modeldriven
, struts2查询
, struts2 表单 国际化
动作类
,以便于您获取更多的相关知识。

时间: 2024-09-19 00:05:58

Struts2教程10:国际化的相关文章

Struts2教程5:使用Validation框架验证数据

在<Struts2教程4:使用validate方法验证数据>中曾讲到使用validate方法来验证客户端提交的数据,但如果使用validate方法就会将验证代码和正常的逻辑代码混在一起,但这样做并不利于代码维护,而且也很难将过些代码用于其他程序的验证.在Struts2中为我们提供了一个Validation框架,这个框架和Struts1.x提供的Validation框架类似,也是通过XML文件进行配置. 一.服务端验证 下面将给出一个例子来演示如何使用Struts2的validation框架来进

JAVA提高教程(10)-认识List列表之Stack

不多说,我们直接看源代码 1.package collection.lession10; 2. 3.import java.util.Arrays; 4.import java.util.List; 5.import java.util.Stack; 6. 7./** 8. * 老紫竹JAVA提高教程(10)-认识List列表之Stack<br> 9. * 实现了LIFO的对象堆栈,<br> 10. * 类本身继承自Vector,扩展了一些方法<br> 11. * &l

自定义实现struts2中的国际化机制

最近一段时间,一直在研究struts2中的国际化实现方案. 对于struts2中标签的国际化中,key值的搜索顺序如下: 假设我们在某个ChildAction中调用了getText("user.title"),Struts 2.0的将会执行以下的操作: (1)优先加载系统中保存在ChildAction的类文件相同位置,且baseName为ChildAction的系列资源文件. (2)如果在(1)中找不到指定key对应的消息,且ChildAction有父类ParentAction,则加载

【译】ASP.NET MVC 5 教程 - 10:添加验证

原文:[译]ASP.NET MVC 5 教程 - 10:添加验证 在本节中,我们将为Movie模型添加验证逻辑,并确认验证规则在用户试图使用程序创建和编辑电影时有效. DRY 原则 ASP.NET MVC 的一个核心原则是DRY(Don't Repeat Yourself - 不做重复的事情).ASP.NET MVC 鼓励你一次性的指定功能或行为,然后应用程序的其它地方通过映射得到它,这样一来就减少了大量的代码,从而减少了出错误的可能性,并且更易于维护. ASP.NET  MVC  和 Enti

YII Framework框架教程之国际化实现方法_php实例

本文讲述了YII Framework框架教程之国际化实现方法.分享给大家供大家参考,具体如下: 一个web应用,发布到互联网,就是面向全球用户.用户在世界的各个角落都可以访问到你的web应用,当然要看你的网站和不和谐,不和谐的web应用在和谐社会是不让你访问的. YII提供了国际化的支持,可以让我们创建的应用适合不同语言的人群. 国际化是一个很花哨的东西,没有哪个大型的网站真正能做到国际化.大多都是针对不懂的语言,不同地区设计不同的网站.如果你的应用相对较小,处理的东西不多,那么国际化起来的东西

Javascript实例教程(10) 随机显示图片

javascript|教程|随机|显示 利用javascript随机显示图片 有时你可以会在一些网站看到一些变化显示的图片,这除了可以利用Flash来制作之外,当然也可以利用本节教程介绍的方法来实现哦.好吧,就开始我们的创作吧.我们可以在网页的最前面部分添加以下的代码来创建一个随机的数字: <SCRIPT> <!-- // Randomizer rnd.today=new Date(); rnd.seed=rnd.today.getTime(); function rnd() { rnd

FW MX 2004教程(10):链接设置

教程|链接 在Fireworks中,为图像设置链接区域是靠"切片"或"热点"工具来完成,因此"切片"或"热点"区域又被称为链接区域.它们不是以图像的形式存在,而是在图像导出成网页格式后,以HTML代码的形式出现. 1.切片与热点 网页层:所有的"切片"和"热点"区域都被保存在"层"面板中的"网页层"内,以划分它们与图像层的区别.但同时也可以像对待图

Dreamweaver MX 2004视频宝典教程(10)

dreamweaver|教程 第 10 集:菜单概述 课程目标:熟悉Dreamweaver各个菜单的基本作用 课程要点:Dreamweaver菜单包括文件,编辑,查看,插入,修改,文本,命令,站点,窗口,帮助. 文件:包括对文件的各种操作. 编辑:包含了对文件 的拷贝,粘贴,查找与替换等命令. 查看:使用查看菜单可以查看文档的相关内容. 插入:用于将对象插入文档中.修改:可以使用修改菜单更改选定页面元素的属性. 文本:可以设置文本的格式,如段落格式,字体等. 命令:提供各种命令的访问. 站点:提

Flash MX 2004视频宝典教程(10)神奇的遮罩

教程 第 10 节:神奇的遮罩 课程目标:学习遮罩.ActionScript的应用. 课程要点:本节是超速入门系列最后一讲,通过实例介绍遮罩.按钮以及ActionScript等知识. 观看教程:[全屏观看] (3.60MB) (必须安装Flash Player 7.0或更高版本的播放器,[官方下载] [太平洋下载]) 下载教程:[下载教程](鼠标右键点击该链接,然后从弹出的菜单中选择"目标另存为-")