Struts2入门配置教程:处理form与submit
"struts2入门配置手把手教.doc" Struts2是一个强大的MVC框架,它的出现是为了克服Struts1.x框架的一些限制和不足。在本文档中,我们将逐步了解如何入门Struts2的配置,以及如何处理一个form中的多个submit按钮。教程使用的是Struts2.0.11.1版本,配合MyEclipse6、Tomcat6、JDK1.5.0_12和JavaEE5.0进行开发。 首先,要开始使用Struts2,我们需要获取必要的库文件。这些文件包括`struts2-core-2.0.11.1.jar`、`xwork-2.0.4.jar`、`commons-logging-1.0.4.jar`、`freemarker-2.3.8.jar`和`ognl-2.6.11.jar`。这些库是Struts2框架运行的基础,它们提供了核心功能、表达式语言、日志服务以及模板引擎等关键组件。 与Struts1.x相比,Struts2的配置和使用方式有了很大的变化。Struts2是基于Webwork技术构建的,因此很多底层实现都采用了Webwork的核心组件,如XWork。尽管如此,Struts2依然遵循MVC设计模式,以动作驱动的方式来处理请求。 对于一个基于Struts1.x的Web应用,通常的开发流程包括配置ActionServlet、编写Action类以及ActionForm类。而在Struts2中,这些步骤也发生了变化: 1. **配置Struts2** - 不再需要配置ActionServlet,而是要在`web.xml`中配置Struts2的前端控制器`FilterDispatcher`或`StrutsPrepareAndExecuteFilter`。这样,Struts2能够拦截所有的HTTP请求,并按照配置进行处理。 2. **编写Action类** - Struts2的Action类不再需要继承自特定的基类,而是实现`com.opensymphony.xwork2.Action`接口或者使用ActionSupport类,后者提供了默认的行为和错误处理。 3. **表单处理** - 在Struts2中,ActionForm的概念被ActionContext中的值栈( Value Stack )所替代。用户输入的数据可以直接绑定到Action类的属性上,无需单独创建ActionForm类。 4. **处理多submit按钮** - Struts2允许在同一个表单中有多个submit按钮,通过在submit按钮上设置不同的name属性,然后在Action类中根据这个name属性来判断是哪个按钮被点击了,从而执行相应的逻辑。 5. **配置Struts2的配置文件** - `struts.xml`是Struts2的主要配置文件,它定义了Action的映射、结果类型、拦截器链等。配置文件可以更加灵活,支持注解方式,使得配置更加简洁。 6. **视图层** - Struts2默认使用Freemarker作为视图模板,也可以选择JSP或其他模板语言。视图的渲染基于OGNL(Object-Graph Navigation Language),它提供了一种强大的数据绑定机制。 通过以上步骤,我们可以构建起一个基本的Struts2应用。Struts2还提供了许多高级特性,如国际化、主题和样式、异常处理、插件扩展等,这些都可以帮助开发者构建出高效、可维护的Web应用程序。在实际开发中,理解并掌握这些配置和原理对于有效利用Struts2框架至关重要。
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/66d5e9fad23948e19be79e8bb853d43e_weicaijiang.jpg!1)
- 粉丝: 118
- 资源: 293
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 构建Cadence PSpice仿真模型库教程
- VMware 10.0安装指南:步骤详解与网络、文件共享解决方案
- 中国互联网20周年必读:影响行业的100本经典书籍
- SQL Server 2000 Analysis Services的经典MDX查询示例
- VC6.0 MFC操作Excel教程:亲测Win7下的应用与保存技巧
- 使用Python NetworkX处理网络图
- 科技驱动:计算机控制技术的革新与应用
- MF-1型机器人硬件与robobasic编程详解
- ADC性能指标解析:超越位数、SNR和谐波
- 通用示波器改造为逻辑分析仪:0-1字符显示与电路设计
- C++实现TCP控制台客户端
- SOA架构下ESB在卷烟厂的信息整合与决策支持
- 三维人脸识别:技术进展与应用解析
- 单张人脸图像的眼镜边框自动去除方法
- C语言绘制图形:余弦曲线与正弦函数示例
- Matlab 文件操作入门:fopen、fclose、fprintf、fscanf 等函数使用详解
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)