Struts2入门教程:从Struts1到Struts2的转变

需积分: 9 0 下载量 85 浏览量 更新于2024-07-25 收藏 577KB PDF 举报
"这是一个关于Struts2的教程,涵盖了如何使用Struts2开发Web应用程序的基本步骤和所需的库。教程中提到了使用MyEclipse6作为开发工具,Tomcat6作为Web服务器,以及Struts2.0.11.1、JDK1.5.0_12和JavaEE5.0作为开发环境。教程强调了Struts2与Struts1.x的显著区别,指出Struts2基于Webwork框架,并依赖于xwork、commons-logging、freemarker和ognl等库。" 在Struts2框架中,核心组件包括`struts2-core`、`xwork`、`commons-logging`、`freemarker`和`ognl`等jar包。这些组件共同为开发者提供了强大的MVC功能,如Action处理、视图渲染、表达式语言和日志管理。 与Struts1.x相比,Struts2的配置和使用方式有了显著变化。在Struts1.x中,我们需要配置ActionServlet,并编写Action和ActionForm类。而在Struts2中,Action类通常继承自`com.opensymphony.xwork2.ActionSupport`,并且配置文件采用XML或者注解形式,更加灵活。 创建一个基本的Struts2应用通常涉及以下步骤: 1. **环境配置**:首先确保已安装所有必要的库,包括Struts2的核心库和其他依赖库,如JDK和Web服务器。 2. **Web应用配置**:在`web.xml`中配置`FilterDispatcher`(或在较新版本中是`StrutsPrepareAndExecuteFilter`),这是Struts2的入口点,它替代了Struts1.x中的ActionServlet。 3. **编写Action类**:Action类负责处理用户请求,实现业务逻辑。这些类不再需要继承自特定的基础类,而是直接实现`com.opensymphony.xwork2.Action`接口或扩展`ActionSupport`。 4. **定义结果映射**:在`struts.xml`或使用注解定义Action与视图之间的映射,指定不同业务逻辑执行后的跳转页面。 5. **创建视图**:Struts2支持多种视图技术,如JSP、FreeMarker等,用于展示数据。 6. **使用OGNL**:OGNL(Object-Graph Navigation Language)是Struts2的默认表达式语言,用于在Action和视图之间传递数据。 7. **国际化与异常处理**:Struts2提供内置的支持来处理错误和异常,以及多语言资源文件。 8. **拦截器**:Struts2的拦截器机制增强了灵活性,允许开发者定义预处理和后处理逻辑,例如登录检查、日志记录等。 通过这些基本步骤,开发者可以快速搭建起一个功能完善的Struts2 Web应用。Struts2的模块化设计和丰富的插件生态系统使其成为Java Web开发的强大工具,尤其适合大型复杂项目。然而,随着Spring Boot和其它现代框架的崛起,Struts2在近年来的使用有所减少,但其设计理念和最佳实践仍然对理解现代Web框架有重要价值。