### Struts In Action 中文版知识点详述 #### 一、Struts框架简介及发展历程 - **背景**:Struts框架是由Apache软件基金会维护的一个开源项目,它属于MVC(Model-View-Controller)架构模式的一种实现。Struts In Action这本书详细介绍了Struts框架的应用方法及其背后的原理。 - **发展历程**: - Struts最早由Gavin King在2000年创建,随后发展成为一个广泛使用的Java Web应用框架。 - 随着时间的发展,Struts框架经历了多个版本的迭代,其中包括Struts 1.x和Struts 2.x两个主要分支。 - Struts 1.x系列主要关注于提供一种标准化的方式来构建Web应用程序,简化了开发过程。 - Struts 2.x则是在Struts 1.x的基础上进行了重大的改进,引入了许多新的特性,如拦截器、结果类型等,使得框架更加灵活且易于扩展。 #### 二、Struts框架的核心概念 - **MVC架构**:Struts遵循MVC架构模式,将应用程序分为三个主要部分: - **Model(模型)**:负责存储数据以及定义业务逻辑。 - **View(视图)**:负责展示数据,即用户界面。 - **Controller(控制器)**:作为模型和视图之间的桥梁,负责处理用户的请求,并调用相应的模型进行处理,然后将处理结果返回给视图展示。 - **Action**:Struts中的Action类是控制器的核心部分,它接收用户的请求并调用业务逻辑进行处理,然后决定下一步的操作,比如转向另一个页面或者显示某个视图。 - **ActionForm**:ActionForm对象用于封装用户提交的数据,它可以看作是视图层和模型层之间的中介,使得Action类无需直接处理HTTP请求参数。 - **配置文件**:Struts的配置文件(struts-config.xml)用于定义Action映射、资源文件引用等配置信息。 - **标签库**:Struts提供了丰富的标签库,包括数据绑定标签、条件标签等,方便开发者在JSP页面中使用。 #### 三、Struts框架的关键技术 - **超文本传输协议(HTTP)**:HTTP是Web应用的基础协议,Struts框架通过HTTP协议与客户端进行交互。 - **公共网关接口(CGI)**:尽管CGI在Java Web开发中已经很少使用,但它是一种早期的Web技术,通过它可以理解Web服务器如何与外部程序通信。 - **Java Servlet**:Servlet是Java Web开发的基础,Struts框架底层就是基于Servlet实现的。 - **JavaServer Pages(JSP)**:JSP是用于生成动态网页的一种技术,Struts中的视图层通常是用JSP页面来实现的。 - **JSP标签**:JSP标签库为开发者提供了一系列方便的标签,简化了JSP页面的开发。 - **JavaBeans**:JavaBeans是一种标准的Java组件模型,用于封装数据和业务逻辑。 - **Model 2**:Struts框架采用的是Model 2设计模式,这种模式将业务逻辑与表现逻辑分离,提高了代码的可维护性和可扩展性。 #### 四、构建简单的Struts应用 - **步骤概述**: - 创建ActionForm类:用于封装用户提交的数据。 - 创建Action类:处理用户的请求,调用业务逻辑。 - 创建Struts配置文件:定义Action映射和其他配置信息。 - 创建JSP页面:实现视图层展示。 - **具体实现**: - **创建ActionForm**:例如创建一个`RegisterActionForm`类,用于封装注册表单的数据。 - **创建Action**:例如创建一个`RegisterAction`类,处理用户的注册请求。 - **配置文件设置**:在`struts-config.xml`文件中定义Action映射和相关的配置信息。 - **页面设计**:设计JSP页面来展示表单和处理结果。 #### 五、总结 Struts In Action这本书不仅详细介绍了Struts框架的基本概念和技术细节,还通过实例展示了如何使用Struts框架来构建复杂的Web应用。对于想要学习和掌握Struts框架的开发者来说,这本书是一个非常好的资源。通过本书的学习,不仅可以了解到Struts框架的工作原理,还能掌握如何有效地使用它来提高开发效率和质量。
- 粉丝: 0
- 资源: 29
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- pytorch安装-pytorch安装
- java-leetcode题解之Next Permutation.java
- FJSP_algorithm-模拟退火算法
- java-leetcode题解之Network Delay Time.java
- java-leetcode题解之Multiply Strings.java
- java-leetcode题解之Move Zeroes.java
- java-leetcode题解之Most Stones Removed with Same Row or Column.java
- anaconda-anaconda安装
- java-leetcode题解之Most Profit Assigning Work.java
- java-leetcode题解之Most Frequent Subtree Sum.java