Struts是Apache软件基金会下的一个开源项目,主要是一款用于构建企业级Java Web应用程序的MVC框架。本教程聚焦于Struts 2.0版本,这是一个非常成熟且广泛使用的框架,旨在简化开发过程并提高代码的可维护性。Struts 2.0是在Struts 1.x的基础上进行了大量改进和增强,提供了更多功能和灵活性。
Struts 2.0的核心概念包括:
1. **Action类**:Action类是业务逻辑的载体,处理用户请求并返回结果。在Struts 2中,你可以自定义Action类,继承自`com.opensymphony.xwork2.ActionSupport`或实现`com.opensymphony.xwork2.Action`接口。
2. **配置文件**:Struts 2的配置文件通常为struts.xml,用于配置Action、结果类型、拦截器等。这些配置可以是XML格式,也可以通过注解完成。
3. **拦截器(Interceptors)**:拦截器是Struts 2的一个强大特性,它们按照预定义的顺序在Action执行前后运行,可以实现如日志、事务管理、性能监控等通用功能。
4. **结果类型(Result Types)**:定义了Action执行后如何展示结果,如转发、重定向、流等。默认结果类型是dispatcher,将结果转发到一个JSP页面。
5. **OGNL(Object-Graph Navigation Language)**:Struts 2中的默认表达式语言,用于在Action与视图之间传递数据。你可以通过OGNL访问Action的属性,甚至动态计算表达式。
6. **ModelDriven模式**:允许Action类仅关注业务逻辑,而模型对象的处理则由框架自动完成。
7. **Plug-in架构**:Struts 2的插件机制使得开发者可以轻松地扩展框架功能,如Spring集成、Tiles视图布局等。
8. **异常处理**:Struts 2提供了一套强大的异常处理机制,允许开发者定义全局和Action级别的异常映射。
9. **主题和皮肤**:Struts 2支持更换界面样式,提供了一套基于Freemarker或JSP的模板引擎,方便定制视图。
10. **国际化(i18n)**:Struts 2内置了对多语言的支持,可以轻松实现应用的国际化。
在提供的教程"struts2.0.chm"中,你可能会学到如何设置Struts 2环境,创建第一个Struts 2应用,理解Action和Result的工作原理,使用拦截器进行日志记录,以及如何利用OGNL进行数据绑定。此外,你还会接触到Struts 2与Spring的整合,以及如何处理表单提交和文件上传等常见Web操作。深入学习这个教程,你将掌握Struts 2的基本用法和设计模式,为构建高效、可维护的Java Web应用打下坚实基础。