Struts2入门:配置全局资源与国际化信息详解

需积分: 9 0 下载量 145 浏览量 更新于2024-08-17 收藏 365KB PPT 举报
"配置全局资源与输出国际化信息-struts2快速入门" Struts2是一个基于MVC模式的Java Web框架,它是在WebWork2的基础上发展起来的。与它的前身Struts1相比,Struts2有着显著的优势,比如无侵入式设计、强大的拦截器机制、内置类型转换器以及对多种视图技术的支持等。 无侵入式设计是Struts2的一个重要特点,这意味着应用程序的业务逻辑并不直接依赖于ServletAPI和StrutsAPI。例如,一个典型的Struts1 Action类可能会直接继承自`Action`类并实现`execute`方法,这使得业务逻辑与框架紧密耦合。而在Struts2中,Action类不再需要直接继承特定的基类,而是可以通过实现自定义接口或直接编写独立的业务类来实现。 Struts2的拦截器机制允许开发者实现AOP(面向切面编程)功能,如权限控制、日志记录等。拦截器可以插入到Action调用的链条中,根据预设的规则执行特定操作。 类型转换器是Struts2的另一大亮点,它可以自动将HTTP请求参数转换为所需的数据类型。在Struts1中,要实现相同的功能,开发者需要注册自定义的类型转换器到BeanUtil。这对于处理复杂数据类型或自定义类型的请求参数非常有用。 此外,Struts2支持多种视图技术,包括JSP、FreeMarker和Velocity,这样开发者可以根据项目需求选择最适合的模板语言。对于输入验证,Struts2允许在特定方法级别进行,提高了验证的灵活性,而Struts1的验证通常在整个Action级别进行。 配置Struts2开发环境通常涉及以下步骤: 1. 获取Struts2的jar文件,可以从Apache Struts官方网站下载最新的版本。 2. 编写Struts2的核心配置文件`struts.xml`,在这个文件中可以配置Action、结果类型、拦截器等。 3. 在`web.xml`中添加Struts2的初始化配置,确保框架在Web应用启动时能够正确加载。 在国际化信息方面,Struts2提供了方便的管理机制。通过在`struts.xml`中定义`struts.custom.i18n.resources`常量,可以将资源文件声明为全局资源。例如,设置`<constant name="struts.custom.i18n.resources" value="itcast" />`后,`itcast`即成为资源文件的基本名。然后,在JSP页面中,可以用`<s:text>`标签配合`name`属性引用资源文件中的key,如`<s:text name="user" />`。在Action类中,继承`ActionSupport`并使用`getText()`方法,同样传入key即可获取对应的语言信息。对于表单字段,可以使用`<s:textfield>`标签的`key`属性来引用国际化资源,如`<s:textfield name="realname" key="user" />`。 Struts2框架提供了更加灵活、强大的功能,使得开发者在构建Web应用时能更专注于业务逻辑,而非框架的细节。通过合理的配置和使用,可以有效地提高开发效率和应用的可维护性。