### Struts1学习文档知识点详解 #### 一、Struts框架概述 Struts框架最初作为Apache Jakarta项目的一部分,旨在通过研究和改进Java Server Pages (JSP)、Servlets、标签库以及面向对象技术,提升其在Web应用开发中的效能与灵活性。Struts的核心在于其强大的控制层设计,它不仅在控制器层(MVC模式中的C层)发挥了关键作用,同时也在模型(Model)和视图(View)层提供了全面的支持。 #### 二、MVC设计模式在Struts中的实现 MVC(Model-View-Controller)模式是Struts框架的基础。其中,模型负责处理数据逻辑,视图负责展示数据,而控制器则作为两者之间的桥梁,负责接收用户的请求,并调用模型进行相应的业务处理,最后决定返回哪个视图给用户。Struts通过Action、ActionForm、Model和JSP视图实现了MVC的完整架构。 #### 三、搭建Struts环境 1. **下载并解压Struts**: 获取Struts-1.3.10-all.zip,解压后在lib目录下获取相关JAR文件。 2. **创建Web项目**: 建立一个名为myStruts1.x的Web项目。 3. **导入JAR文件**: 将Struts的JAR文件导入项目。建议将常用JAR包添加至用户库,以便后续项目快速引用。 #### 四、自定义ActionForm - LoginForm ActionForm类是Struts框架中用于封装表单数据的对象,它继承自`ActionForm`基类。在本例中,`LoginForm`用于封装登录表单的数据,包含用户名和密码字段。通过getter和setter方法提供访问和修改属性值的能力。 ```java package com.asm; import org.apache.struts.action.ActionForm; public class LoginForm extends ActionForm { private String username; private String password; // Note: Corrected from 'passwrord' to 'password' public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } } ``` #### 五、自定义Action - LoginAction Action类负责处理用户请求,执行业务逻辑并返回合适的视图。`LoginAction`重写了`execute`方法,根据用户输入的用户名进行条件判断,如果用户名为"struts",则返回成功视图;否则,返回失败视图。 ```java package com.asm; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; public class LoginAction extends Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { LoginForm loginForm = (LoginForm) form; if (loginForm.getUsername().equals("struts")) { return mapping.findForward("loginSuccess"); } else { return mapping.findForward("loginFailure"); } } } ``` #### 六、配置文件 - web.xml 和 struts-config.xml **web.xml** 文件配置了Struts的核心Servlet (`ActionServlet`) 和其初始化参数,指定Struts配置文件的位置。 ```xml <!-- 省略文档声明 --> <welcome-file-list> <welcome-file>login.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <!-- Load on startup configuration --> <load-on-startup>1</load-on-startup> </servlet> <!-- Servlet mappings and other configurations go here --> ``` **struts-config.xml** 文件用于定义Struts框架的行为,包括Action映射、表单bean和国际化资源等,但具体的配置细节未在给定部分中提供。 Struts框架通过其灵活的MVC架构,提供了高效、可维护的Web应用开发方案。通过自定义ActionForm和Action,结合精心设计的配置文件,开发者能够轻松构建功能丰富的Web应用程序。
剩余23页未读,继续阅读
- 粉丝: 0
- 资源: 7
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- A股上市公司MSCI ESG评级面板数据(2017-2023).zip
- Sim-EKB-Install-2024-08-08
- PHP100视频教程59关于BIWEB常见问题和结构分析最新版本
- 2212001018焦宇洁实验四1.zip
- 我的Python第一课
- 477847985552636影驰 B650M-A 2025-01-09.zip
- 一个使用 Java 结合 JavaFX 库来实现的 “大炮打蚊子” 游戏的源码
- PHP备份数据库原理和方法PHP100视频教程57最新版本
- PHP安装程序的制作原理和步骤PHP100视频教程56最新版本
- 图像识别领域YOLO目标检测算法的机制解析与应用场景
- PHP5中使用PDO连接数据库PHP100视频教程55最新版本
- ApacheRewrite伪静态配置PHP100视频教程54最新版本
- YOLO手掌数据集训练集
- c++删除链表末尾Deletion at the end 操作涉及删除链表的最后一个节点
- YOLO手掌数据集训练集2
- PHP如何防止注入及开发安全PHP100视频教程53最新版本