Struts2配置全局资源与国际化信息实战指南

需积分: 3 6 下载量 107 浏览量 更新于2024-08-18 收藏 174KB PPT 举报
"这篇教程主要讲解了如何在Struts2框架中配置全局资源文件和实现国际化信息输出。教程提到了两个资源文件,分别是存放中文的`itcast_zh_CN.properties`和存放英文(默认语言)的`itcast.properties`。在`struts.xml`中通过`<constant>`标签设置`struts.custom.i18n.resources`常量来加载这些资源文件。在JSP页面中,使用`s:text`标签结合属性文件中的key来输出国际化信息。在Action类中,可以通过继承`ActionSupport`并调用`getText()`方法来获取属性文件中的值。此外,还介绍了Struts2框架的开发依赖jar包以及启动配置,其中Struts2通过Filter启动,并在`web.xml`中配置`FilterDispatcher`来读取`struts.xml`进行初始化。" Struts2框架允许开发者轻松地配置全局资源文件以实现多语言支持,这在国际化应用中尤为重要。在这个教程中,我们首先看到了两个资源文件:`itcast_zh_CN.properties`和`itcast.properties`,它们分别存储中文和英文的信息。在实际应用中,你可以根据需要添加更多语言的资源文件,比如`itcast_es_ES.properties`用于西班牙语等。 为了使Struts2框架能够加载这些资源文件,我们需要在`struts.xml`配置文件中定义一个常量`struts.custom.i18n.resources`,其值为资源文件的基本名称,即`itcast`。这样,框架就会自动寻找以这个名字开头、不同语言后缀的资源文件。 在视图层,JSP页面可以通过`<s:text>`标签来输出国际化信息。`name`属性应该设置为属性文件中的key,例如`<s:text name="user"/>`会从相应的资源文件中查找并输出`user`键所对应的值。 在控制层,Action类可以继承`ActionSupport`,这样就可以利用`getText()`方法获取属性文件中的值。例如,`getText("user")`将返回`user`键的国际化信息。 对于表单字段,`<s:textfield>`标签的`key`属性可以用来指定属性文件中的key,例如`<s:textfield name="realname" key="user"/>`,这样表单字段的label会显示属性文件中`user`键对应的文本。 在Struts2的开发环境中,确保正确引入所需的jar包是非常关键的。基础的Struts2开发需要`struts2-core`、`xwork`、`ognl`、`freemarker`和`commons-logging`等jar包。如果需要与其他框架集成,比如Spring,还需要对应的plugin jar文件,例如`struts2-spring-plugin`。 Struts2框架不同于Struts1,它不是通过Servlet启动,而是通过Filter,即`FilterDispatcher`。在`web.xml`中配置这个过滤器,并映射到所有URL,使得所有的HTTP请求都会经过Struts2的处理,从而实现框架的初始化和控制流程。 这个教程涵盖了Struts2中配置资源文件实现国际化以及框架的基础配置,对于理解Struts2的国际化支持和框架启动流程有很好的指导作用。