Struts2详解:核心组件与配置文件解析

需积分: 0 2 下载量 187 浏览量 更新于2024-07-30 收藏 653KB DOC 举报
"struts2超详细笔记,涵盖了从基础到进阶的全面内容,包括配置、实例和核心组件解析" Struts2是一个流行的Java web框架,用于构建MVC(Model-View-Controller)架构的应用程序。这篇超详细笔记旨在帮助开发者深入理解Struts2的工作原理和实践操作。 1. **环境搭建** Struts2的初步使用涉及到下载和解压Struts2的核心包。在提供的`struts-2.1.6-all.zip`中,包含了如`apps`(示例应用)、`docs`(官方文档)、`lib`(依赖的JAR文件)和`src`(源代码)等目录。开发者需要关注`lib`目录中的关键组件,如`struts2-core-2.1.6.jar`(核心类库)、`freemarker-2.3.13.jar`(模板引擎)、`commons-logging-1.0.4.jar`(日志处理)、`ognl-2.6.11.jar`(对象图导航语言)、`xwork-2.1.2.jar`(XWork框架基础)、`commons-fileupload-1.2.1.jar`(文件上传组件)以及`commons-io-1.3.2.jar`(文件I/O操作)。 2. **核心组件** - **Struts2-Core**: 包含了核心控制器、拦截器、结果类型等,是整个框架的基础。 - **Freemarker**: 支持视图层的模板引擎,允许开发者使用模板语言创建动态HTML页面。 - **OGNL**: 对象图形导航语言,用于在Action对象与JSP页面之间传递数据。 - **XWork**: Struts2的前身,提供了许多底层功能,如动作执行、类型转换和验证等。 - **Commons-Fileupload & Commons-IO**: 文件上传功能的实现,处理文件上传请求和流操作。 3. **配置文件** - **web.xml**: 容器级别的配置文件,主要配置`StrutsPrepareAndExecuteFilter`过滤器。这个过滤器负责初始化Struts2框架并处理所有请求。`ActionContextCleanUp`过滤器则用于清理ActionContext,确保多个过滤器之间的正确交互。 - **struts.xml**: 框架的核心配置文件,定义Action、结果类型、拦截器栈等。通常,开发者会根据项目需求将配置拆分为多个XML文件,以便于管理和维护。 4. **配置详解** - **StrutsPrepareAndExecuteFilter**: 配置参数可指定额外的XML配置文件,影响框架行为。例如,`filter-mapping`标签定义了哪些URL需要经过Struts2处理。 - **struts.xml**: 在这里定义Action类、Action的映射、结果类型和拦截器。`<package>`元素用于组织相关配置,`<action>`定义具体操作,`<result>`设置操作后的输出页面。 5. **实例与实践** 笔记中的实例部分可能包括创建简单的Struts2应用程序,从创建Action类到配置Action映射,再到使用Freemarker或JSP创建视图,以及如何处理文件上传请求。通过这些实例,读者能够更好地理解Struts2的工作流程。 这份超详细笔记将带领读者从基础到深入地掌握Struts2框架,包括其核心组件、配置方式以及实际应用场景,对于学习和理解Struts2的开发者来说是一份宝贵的参考资料。