Struts2入门教程:从零开始学习

需积分: 9 0 下载量 63 浏览量 更新于2024-07-24 收藏 577KB PDF 举报
"Struts2教程,适合初学者,讲解Struts2的各种技术,包括实例,涉及的工具和库如MyEclipse6、Tomcat6、Struts2.0.11.1、JDK1.5.0_12、JavaEE5.0。教程中的Web工程上下文路径为struts2,讲解了Struts2与Struts1.x的区别,以及Struts2基于Webwork的MVC架构。" 在深入理解Struts2之前,首先需要知道它是Apache软件基金会的一个开源项目,是一个用于构建企业级Web应用的MVC框架。Struts2作为Struts1.x的升级版,不仅在架构上进行了革新,而且提供了更强大的功能和更灵活的配置方式。 1. **Struts2的核心组件**: - **Struts2 Core**: 包含了处理请求、执行Action和结果映射的核心功能。 - **XWork**: 提供了Action管理和业务逻辑处理的基础,Struts2的很多核心功能都依赖于XWork。 - **Commons Logging**: 日志处理库,使得Struts2可以适应多种日志框架。 - **FreeMarker**: 模板引擎,用于生成动态HTML或其他格式的响应。 - **OGNL (Object-Graph Navigation Language)**: 表达式语言,用于对象属性的访问和操作。 2. **Struts2与Struts1.x的区别**: - **配置简化**:Struts2的配置文件XML结构更加简洁,可以使用注解进行配置,减少了XML配置的繁琐。 - **拦截器**:Struts2引入了拦截器(Interceptor)机制,允许在Action执行前后添加自定义逻辑,增强了扩展性和灵活性。 - **类型安全的映射**:OGNL使得Struts2能够进行类型安全的参数映射,减少了类型转换错误。 - **强大的结果类型**:支持多种结果类型,如JSP、FreeMarker、 Velocity等,甚至可以返回JSON或XML数据。 3. **创建Struts2应用的基本步骤**: - **添加依赖**:确保引入了Struts2的必要库,如上述的jar包。 - **配置web.xml**:配置Struts2的FilterDispatcher或者StrutsPrepareAndExecuteFilter,作为应用的前端控制器。 - **创建Action类**:Action不再直接继承自Action类,而是实现Action接口或继承自ActionSupport类,定义业务逻辑方法。 - **编写Action Mapping**:在struts.xml配置文件中定义Action及其对应的URL、结果页面等。 - **Action Form**:Struts2使用POJO(Plain Old Java Object)作为表单bean,无需继承特定类。 - **视图层**:可以使用JSP、FreeMarker等模板技术来构建视图,利用Struts2的标签库简化页面开发。 4. **Struts2的生命周期**: - 用户发起请求到达过滤器,过滤器将请求交给Struts2框架。 - 框架解析请求,找到匹配的Action。 - Action执行,业务逻辑处理。 - 结果处理,根据Action的返回值,选择对应的结果页面。 - 最后,框架将结果页面发送回客户端。 5. **Struts2的优势**: - 更好的异常处理机制,提供了全局异常处理。 - 支持AJAX,可以通过AJAX插件实现异步交互。 - 插件丰富,如国际化、文件上传下载、JSON支持等。 通过学习Struts2教程,初学者可以逐步掌握如何构建基于Struts2的应用,理解其工作原理,并能够熟练运用到实际项目中。