Struts 1的核心是ActionServlet,这里ActionServlet充当控制器的角色;
还有一个就是RequesProcessor,顾名思义,就是请求处理器,负责接受用户的HttpServletRequest然后做处理,相当于Model。
负责转发的就是ActionForward,负责页面的导航。
除了基本的Action 之外, Struts 还提供了几个其他类型的Action 。
• DispatchAction
: 能同时完成多个Action 功能的Action 。
在实际中用得最多的Action,在一个Action类里能处理好几个请求,相比单单继承Action,是一个进步
• ForwardActon
: 该类用来整合Struts 和其他业务逻辑组件,通常只对请求作有效
性检查。
• IncludeAction
: 用于引入其他的资源和页面。
• LookupDispatchAction
: DispatchAction 的子类,根据按钮的key ,控制转发给action
的方法。
• MappingDispatchAction
: DispatchAction 的子类,一个action 可映射出多个Action
地址。
• SwitchAction:
用于从一个模块转换至另一个模块,如果应用分成多个模块时,就可以使用SwitchAction 完成模块之间的切换。
分享到:
相关推荐
首先,我们需要在Struts1的配置文件`struts-config.xml`中定义一个Action,这个Action将处理图片上传的请求。Action通常对应一个Java类,这个类需要继承自Struts1提供的`Action`基类,并重写`execute`方法。在这个`...
在 Struts1 中,Action 类需要继承一个抽象基类,而在 Struts2 中,Action 类可以实现一个 Action 接口,也可以实现其他接口,使得可选和定制的服务成为可能。Struts2 提供了一个 ActionSupport 基类来实现常用的...
Struts1 的 Action 类需要继承一个抽象基类,而 Struts2 的 Action 类可以实现一个 Action 接口,使可选和定制的服务成为可能。 2. Struts2 的工作流程: Struts2 的工作流程可以分为九个步骤: (1)客户端提交...
- Struts 1要求Action类继承自一个抽象基类,通常是`Action`类,这限制了Action类的扩展性。 - Struts 2则允许Action类实现`Action`接口,或者可以选择实现其他接口,提供更多的定制服务。它还提供了一个`...
### Struts In Action 电子书知识点总结 #### Struts简介 - **Struts**是一个用于构建企业级Java Web应用程序的开源框架。它采用MVC(Model-View-Controller)设计模式,将业务逻辑、用户界面和数据管理分离,从而...
3. **Action映射**:该库提供了自动将Struts 1 Action映射到Struts 2 Action的功能,使得旧有的Action类无需修改就能在新的框架中工作。 4. **配置转换**:Struts Legacy可以处理Struts 1的配置文件(struts-config...
Struts2和Struts1是两个非常著名的Java Web框架,它们在处理请求时通常会在URL中显式地显示.action或.do后缀。然而,为了提供更友好的用户体验和增强安全性,有时我们需要隐藏这些扩展名。本篇文章将详细介绍如何在...
- **Struts1**: 在Struts1中,所有的业务逻辑和请求处理都通过单个Action类来完成。这意味着所有相关的请求都会被转发到同一个Action对象上进行处理。 - **Struts2**: Struts2中的Action更像是工厂模式下的产品,...
DelegatingActionProxy的作用是作为Struts1 Action的代理,它将Struts1的Action实例化工作交给了Spring。这样,我们在配置文件中可以声明Action的Bean,Spring会在需要时自动创建并管理这些Bean。 整合步骤大致如下...
1. "Manning - Struts In Action - Building web applications with the leading Java framework.pdf":这是英文原版的电子书,由Manning出版社出版。这本书详细讲解了如何使用Struts框架来构建领先的Java Web应用...
4. **配置文件**:如struts-config.xml,是Struts1的配置中心,定义了Action、ActionForm、-forward等信息,指导框架如何运作。 5. **Tiles**:Struts1的一个扩展,用于创建可重用的页面布局,增强了视图的灵活性...
例如,传统的Struts1 Action类需要继承特定的Action基类,并实现execute方法,而Struts2则允许开发者使用任何Java类作为Action,只要该类包含一个或多个结果映射的方法。 其次,Struts2引入了拦截器(Interceptor)...
例如,一个典型的Struts1 Action类会继承自`Action`,并重写`execute`方法,但在Struts2中,开发者可以创建任意类并使用注解来标记Action方法,减少了对特定API的依赖。 其次,Struts2引入了拦截器(Interceptor)...
Struts in Action 是一本经典的技术书籍,专注于Java企业级应用开发框架Struts。这本书英文版深入浅出地讲解了如何使用Struts构建高效、可维护的Web应用程序。Struts是基于Model-View-Controller(MVC)设计模式的...
- Struts1的Action单例模式意味着开发者需要确保Action中的资源是线程安全的,而Struts2的Action对象为每个请求创建,无需考虑线程安全。 3. **Servlet依赖** - Struts1的Action直接依赖于Servlet API,执行方法...
1. Action 实现类方面的对比:Struts1 要求 Action 类继承一个抽象基类,而 Struts2 Action 类可以实现一个 Action 接口,也可以实现其他接口,使得可选和定制的服务成为可能。 2. 线程模式方面的对比:Struts1 ...
相较于Struts 1.x,Struts 2.0的Action模型有着显著的区别。 在Struts 1.x中,Action类需要继承`org.apache.struts.action.Action`或其子类,同时表单数据会封装在FormBean中。而Struts 2.0则更加灵活,Action类...
- Struts1 的 Action 实例是单例的,这意味着所有请求都会共享同一个 Action 实例,因此开发者必须确保 Action 资源是线程安全的。相比之下,Struts2 为每个请求创建一个新的 Action 实例,避免了线程安全问题。 3...
1. **Action映射**:将Struts 1的Action配置映射到Struts 2的Action,处理Action的请求和结果。 2. **Form Bean转换**:将Struts 1的Form Bean转换为Struts 2的Action类,调整数据绑定和验证逻辑。 3. **JSP标签**...