Struts2全局资源配置与国际化信息输出详解
需积分: 9 147 浏览量
更新于2024-08-18
收藏 365KB PPT 举报
"配置全局资源与输出国际化信息-struts2教程"
在Struts2框架中,配置全局资源与输出国际化信息是实现多语言支持的关键步骤。这使得应用程序能够根据用户的地区设置显示相应的文本。首先,我们需要创建资源文件,这些文件通常是以.properties为扩展名,例如`messages.properties`,并存储在项目的`src/main/resources`目录下,或者根据项目结构放在相应的包内。
在资源文件中,我们定义键值对,键代表国际化信息的标识(key),值是对应的语言文本。例如:
```
user=用户名
password=密码
```
接下来,为了使Struts2框架能够识别这些资源文件,我们需要在`struts.xml`配置文件中声明它们作为全局资源。通过添加以下常量配置:
```xml
<constant name="struts.custom.i18n.resources" value="messages" />
```
这里的`messages`是资源文件的基本名,它会匹配到如`messages.properties`或针对不同语言的`messages_en_US.properties`等文件。
在JSP页面中,我们使用Struts2的`s:text`标签来输出国际化信息。例如:
```jsp
<s:text name="user" />
```
这里的`name`属性引用了资源文件中的键`user`,标签会自动查找对应的值并显示。
在Action类中,如果Action类继承自`ActionSupport`,我们可以使用`getText()`方法获取国际化信息。这个方法的第一个参数是资源文件中的键:
```java
String username = getText("user");
```
此外,Struts2的表单标签也支持直接通过`key`属性引用资源文件中的键,例如:
```jsp
<s:textfield name="realname" key="user" />
```
这将在表单中创建一个文本字段,并使用`user`键对应的国际化文本作为标签。
Struts2框架是在WebWork的基础上发展起来的,它相比Struts1有诸多优势。例如,Struts2采用了非侵入式设计,降低了与Servlet API的耦合;提供了拦截器机制,便于实现AOP编程,如权限控制;内置了类型转换器,简化了数据类型的转换;支持多种视图技术,如JSP、FreeMarker、Velocity等;并且在输入验证和国际化资源管理方面更为灵活和强大。
搭建Struts2开发环境通常包括获取所需的jar文件、配置Struts2的`struts.xml`以及在`web.xml`中配置Struts2 Filter。完成这些步骤后,开发者就能开始构建基于Struts2的多语言应用程序了。
2010-11-29 上传
2011-07-29 上传
2010-04-02 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
鲁严波
- 粉丝: 25
- 资源: 2万+
最新资源
- 基于Python和Opencv的车牌识别系统实现
- 我的代码小部件库:统计、MySQL操作与树结构功能
- React初学者入门指南:快速构建并部署你的第一个应用
- Oddish:夜潜CSGO皮肤,智能爬虫技术解析
- 利用REST HaProxy实现haproxy.cfg配置的HTTP接口化
- LeetCode用例构造实践:CMake和GoogleTest的应用
- 快速搭建vulhub靶场:简化docker-compose与vulhub-master下载
- 天秤座术语表:glossariolibras项目安装与使用指南
- 从Vercel到Firebase的全栈Amazon克隆项目指南
- ANU PK大楼Studio 1的3D声效和Ambisonic技术体验
- C#实现的鼠标事件功能演示
- 掌握DP-10:LeetCode超级掉蛋与爆破气球
- C与SDL开发的游戏如何编译至WebAssembly平台
- CastorDOC开源应用程序:文档管理功能与Alfresco集成
- LeetCode用例构造与计算机科学基础:数据结构与设计模式
- 通过travis-nightly-builder实现自动化API与Rake任务构建