Struts2入门教程:URL标签与框架优势解析

需积分: 9 3 下载量 87 浏览量 更新于2024-08-18 收藏 365KB PPT 举报
"这篇教程介绍了Struts2框架的入门知识,特别是如何使用`s:url`标签来生成URL,并展示了`%`符号在OGNL表达式中的作用。此外,还概述了Struts2相对于Struts1的优点,包括无侵入式设计、拦截器、类型转换器、多视图技术支持以及输入验证和国际化资源管理。最后,提到了搭建Struts2开发环境的基本步骤,包括获取必需的jar文件、编写配置文件和配置web.xml。" Struts2是一个基于MVC架构的Java web框架,它的诞生源于WebWork2框架。与初代的Struts1相比,Struts2在设计上有显著的不同,主要体现在以下几个方面: 1. **无侵入式设计**:Struts2的应用并不依赖ServletAPI或StrutsAPI,降低了耦合度,使得应用程序更加灵活,易于维护。相比之下,Struts1的Action类需要继承自特定的Action基类,导致了紧密的耦合。 2. **拦截器**:Struts2引入了拦截器(Interceptor),这是一种强大的AOP(面向切面编程)工具,可以用于执行如日志记录、权限检查等多种功能,增强了代码的可扩展性和可复用性。 3. **类型转换器**:框架内置了类型转换器,能自动将请求参数转换为预期的数据类型,无需像在Struts1中那样手动注册转换器。 4. **多视图技术支持**:Struts2支持JSP、FreeMarker、Velocity等多种视图技术,开发者可以根据项目需求选择合适的模板语言。 5. **输入验证**:Struts2允许对特定方法进行输入验证,提高了开发效率,解决了Struts1中验证分散、难以管理的问题。 6. **国际化资源管理**:提供了全局、包级和Action级别的国际化资源文件管理,方便进行多语言支持。 要开始使用Struts2进行开发,首先需要搭建开发环境。这通常包括以下几个步骤: 1. **获取jar文件**:从Apache Struts官方网站下载最新版本的Struts2框架包,解压后得到所需的jar文件。 2. **编写配置文件**:创建Struts2的核心配置文件`struts.xml`,在这里定义Action、结果类型以及其他相关配置。 3. **配置web.xml**:在项目的`web.xml`文件中配置Struts2的前端控制器DispatcherServlet,以启动Struts2框架。 通过以上步骤,开发者就可以在Struts2环境中开始编写Action类和视图,实现MVC模式的web应用了。`<s:url>`标签的使用则简化了URL的生成,例如,它能动态插入参数并生成如`/struts/test/helloworld_add.action?personid=23`这样的完整URL。当`%`符号用于OGNL表达式时,它会计算表达式的结果,如`<s:url value="%{#myurl}" />`会输出变量`myurl`的值。 Struts2提供了一套强大且灵活的工具集,使开发者能够更高效地构建Java web应用。无论是URL管理、数据转换还是安全控制,都有相应的机制支持,使得开发过程更加简洁和高效。