赖家材Struts 传智播客笔记下载
5星 · 超过95%的资源 需积分: 0 168 浏览量
更新于2012-09-10
收藏 879KB DOC 举报
### 赖家材Struts 传智播客笔记知识点概览
#### 一、Struts 入门
##### 1. Struts 入门简介
- **为什么使用 Struts**:
- 建立在 MVC(Model-View-Controller)模式的基础上,Struts 主要在控制器(Controller)和视图(View)方面提供了强大的支持。
- 提供了一个优秀的控制器和一系列自定义标签库,简化了模型和视图的交互。
- 层次清晰、高度可重用性,增强了应用程序的健壮性和可扩展性。
- 便于开发与设计的分工协作。
- 提供了集中统一的权限控制、验证、国际化、日志等功能。
- **开源项目的持续维护**:
- 得到了包括其创始人 Craig R. McClanahan 在内的许多高级开发者的支持和改进。
- 经过实战测试,功能不断加强和完善。
- **良好的融合性**:
- 与其他技术和框架(如 Spring 和 Hibernate)可以很好地集成在一起使用。
- **提高开发效率**:
- 通过使用 Struts,开发者可以快速构建出功能齐全的 Web 应用程序。
##### 2. 框架的概念与 Struts 的体系结构
- **框架概念**:
- 一种通用解决方案,用于解决相同或类似类型的问题。
- 特点包括可重用性、可扩展性和可收缩性。
- 通常基于请求响应(Request-response)模式。
- **Struts 的体系结构**:
- Apache 开源项目,基于 Servlet 和 JSP 技术实现。
- 是一个基于 Java EE 平台的 KVC(Key-Value Coding)框架,采用了 MVC 设计模式。
- 将 MVC 模式的“分离显示逻辑和业务逻辑”发挥到极致。
- **Struts 工作原理结构**:
- 用户浏览器 -> 用户操作 -> 前端控制器 FrontControllerActionServlet -> 后端控制器 Action -> 模型 Model (JavaBean)。
##### 3. 搭建配置环境
- **步骤概述**:
1. 创建 Web 工程。
2. 添加必要的 JAR 包。
3. 在 WEB-INF 目录下添加配置文件 struts-config.xml。
4. 配置 web.xml 文件。
- **具体步骤**:
- **创建 Web 工程**:在 Eclipse 或其他 IDE 中创建一个新的 Web 工程。
- **添加 JAR 包**:下载并添加 Struts 必需的 JAR 包到项目的 classpath 中。
- **配置 struts-config.xml**:编写 Struts 配置文件,定义表单、动作等。
- **配置 web.xml**:设置 Struts 的前端控制器 ActionServlet,通常命名为 action。
```xml
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>Struts Application</display-name>
<!-- 配置 Struts 的前端控制器 -->
<servlet>
<servlet-name>ActionServlet</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>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ActionServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>
```
- **示例 struts-config.xml**:
```xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<!-- 定义表单 -->
</form-beans>
<action-mappings>
<action path="/example" type="com.example.ExampleAction" name="exampleForm" scope="request" input="/example.jsp" parameter="method">
<forward name="success" path="/success.jsp"/>
<forward name="error" path="/error.jsp"/>
</action>
</action-mappings>
</struts-config>
```
#### 二、Struts 原理的详细分析
- **Struts 组件**:
- **ActionServlet (中心控制器)**:负责接收客户端请求,并决定转发到哪个 Action 处理。
- **Action**:处理具体的业务逻辑。
- **ActionMapping** 和 **ActionForward**:定义 Action 的映射关系和跳转路径。
- **ActionForm**:封装用户提交的数据。
- **配置文件中的属性**:定义框架的行为和配置。
- **开发 Struts 思路**:
- 理解 Struts 的核心组件及其作用。
- 掌握配置文件的编写方式。
- 实现业务逻辑时注意分离显示逻辑和业务逻辑。
#### 三、Struts 高级部分
- **Struts 标签**:
- **Bean 标记**:用于操作 Bean 的属性。
- **逻辑标记**:根据条件渲染页面元素。
- **动态表单和异常处理**:
- **动态表单**:根据表单字段的值动态生成表单元素。
- **异常处理**:定义异常处理机制,确保应用的稳定运行。
- **插件的使用**:
- 使用 Struts 插件扩展框架的功能。
- **DispatchAction**:
- **概述**:实现了单一 Action 处理多个请求的方法。
以上是赖家材老师的 Struts 传智播客笔记中关于 Struts 的基础和高级知识点的详细介绍,涵盖了 Struts 的入门概念、工作原理以及高级功能等方面的内容。这些知识点对于初学者来说非常宝贵,能够帮助他们快速掌握 Struts 的核心理念和技术要点。