Struts2入门教程:快速掌握核心概念与配置
需积分: 9 168 浏览量
更新于2024-07-26
收藏 577KB PDF 举报
"struts2 教程 - 学习Struts2框架的入门指南"
Struts2是一个流行的Java web应用程序框架,它基于Model-View-Controller(MVC)设计模式,用于简化开发过程。本教程将带你深入了解Struts2的核心概念、配置方式以及如何创建一个基本的Struts2应用。
在开始之前,确保你已经具备了以下环境:
- 开发工具:MyEclipse6(尽管不直接支持Struts2,但仍可作为开发环境)
- Web服务器:Tomcat6
- Struts版本:Struts2.0.11.1
- JDK版本:JDK1.5.0_12
- J2EE版本:JavaEE5.0
首先,你需要从官方网站struts.apache.org下载Struts2的安装包,其中包含必要的jar文件,如:
- struts2-core-2.0.11.1.jar(Struts2核心库)
- xwork-2.0.4.jar(Webwork的核心技术,Struts2的基础)
- commons-logging-1.0.4.jar(日志处理)
- freemarker-2.3.8.jar(模板引擎,用于视图层)
- ognl-2.6.11.jar(Object-Graph Navigation Language,用于表达式语言)
与Struts1.x相比,Struts2有了显著的变化。它不再依赖于特定的配置方式,而是采用了更加灵活的拦截器机制。Struts2是基于Webwork框架构建的,因此很多组件都来源于Webwork的xwork包。
建立基于Struts2的Web程序的基本步骤:
1. **配置Web应用**:在`web.xml`中配置Struts2的前端控制器,即`FilterDispatcher`(在后来的版本中称为`StrutsPrepareAndExecuteFilter`),而不是像Struts1.x那样配置`ActionServlet`。
2. **定义Action类**:创建自定义的Action类,这些类通常会实现`com.opensymphony.xwork2.Action`接口或继承自`ActionSupport`类,负责业务逻辑的处理。
3. **创建结果映射**:使用XML或者注解定义Action类和结果之间的映射,决定执行完Action后跳转到哪个页面。
4. **配置 strut2.xml**:这是Struts2的核心配置文件,用于定义全局规则、拦截器栈、Action配置等。
5. **ActionForm替换**:在Struts2中,你可以直接在Action类中定义字段,不再需要单独的ActionForm类来封装请求参数。
6. **视图层**:Struts2支持多种视图技术,如JSP、FreeMarker等,通过OGNL(Object-Graph Navigation Language)表达式在视图中动态访问模型数据。
学习Struts2,你需要掌握以下几个关键点:
- **拦截器**:Struts2的核心特性之一,通过拦截器可以实现如日志、权限检查、事务管理等功能。
- **结果类型**:定义Action执行后的返回类型,如dispatcher(转发到JSP)、redirect(重定向)等。
- **动态方法调用**:允许通过URL直接调用Action的方法,提高灵活性。
- **插件体系**:Struts2有丰富的插件支持,如i18n国际化、Tiles布局、JSON支持等。
- **异常处理**:配置全局或Action级别的异常处理策略。
- **主题和皮肤**:提供UI主题定制功能,使应用具有更好的用户体验。
通过本教程,你将逐步学习到如何搭建Struts2环境,编写Action、配置strut2.xml,以及使用Struts2的注解进行简化开发。同时,你还将了解到Struts2的优缺点,以及何时选择Struts2作为项目的技术栈。随着对Struts2理解的深入,你将能够更高效地开发Java web应用。
2012-03-30 上传
2011-11-30 上传
2013-01-23 上传
2014-07-03 上传
2008-09-23 上传
u010081133
- 粉丝: 0
- 资源: 2
最新资源
- Aspose资源包:转PDF无水印学习工具
- Go语言控制台输入输出操作教程
- 红外遥控报警器原理及应用详解下载
- 控制卷筒纸侧面位置的先进装置技术解析
- 易语言加解密例程源码详解与实践
- SpringMVC客户管理系统:Hibernate与Bootstrap集成实践
- 深入理解JavaScript Set与WeakSet的使用
- 深入解析接收存储及发送装置的广播技术方法
- zyString模块1.0源码公开-易语言编程利器
- Android记分板UI设计:SimpleScoreboard的简洁与高效
- 量子网格列设置存储组件:开源解决方案
- 全面技术源码合集:CcVita Php Check v1.1
- 中军创易语言抢购软件:付款功能解析
- Python手动实现图像滤波教程
- MATLAB源代码实现基于DFT的量子传输分析
- 开源程序Hukoch.exe:简化食谱管理与导入功能