在struts1.x中,requestProcessor的理解:
它是为解决actionServlet在多模块的情况下负担过于沉重的问题而出现的.它的目的就是为中央处理器分担负重的.因为在未出现请求处理器前,所有formbean的实例化,查找,验证,actionbean的实例化,调用,寻找都是由中央处理器完成的.
怎么分担?每个模块都有大量的配置,每个模块都有一个请求处理器.但中央控制器还是只有一个.前面所说处理请求时的操作都交给请求处理器去完成了.
而中央控制器只负责请求的分发了.它会携带请求与响应两个参数.
所以,以前由中央控制器做的工作后来都交给请求处理器做了.
在单模块的情况下,我们不需要配置,默认的请求处理器就已经正常工作了.
但对于我们现在的需求时,默认处理器就不行了.因为一旦有请求时,默认处理器就会到配置文件中找type,如果type指定的action实例是否已经存在,不存在它就会实例化一个.
而我们现在要求它要到spring容器中去找action,那么就必须替换掉默认请求处理器.
而spring已经开发好了一个可以替换struts默认请求处理器的代理请求处理器delegatingRequestProcessor.
struts怎么配置指定替换掉默认请求处理器呢?
通过controller指定process-class属性值为spring提供的代理请求处理器就可以了,它就会到spring容器中去寻找对应的action实例,而不再根据type直接实例化一个action实例了.
分享到:
相关推荐
DisapatchAction测试和RequestProcessor控制器类
这只是一个最简单的demo,只有一个action, 通过代理RequestProcessor实现
JHTTP.java RequestProcessor.java
2、RequestProcessor类(处理异常的核心组件)。 3、ActionForm(接收页面中传过的数据)。 4、Action(是控制器,主要是从ActionForm中接收页面传进来的数据,然后进行逻辑 处理)。 5、ActionForward(页面跳转,...
在請求來臨後,RequestProcessor 根據請求URI呼叫對應的Action物件,將工作交給它,並在最後由Action物件得到一個ActionForward物件, ActionServlet使用ActionForward得知將流程forward至指定的資源。 當請求到達...
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) at org.apache.struts....
Struts的控制器主要包括: ActionServlet :核心控制器 RequestProcessor :子应用模块的处理器 Action :处理单项业务
ActionServlet是一个FrontController,它是一个标准的Servlet,它将request转发给RequestProcessor来处理, ActionMapping是ActionConfig的子类,实质上是对struts-config.xml的一个映射,从中可以取得所有的配置...
Struts过滤器可以解决页面之间的乱码问题 一个类继承struts的RequestProcessor(分request 和response处理) 然后在struts-config.xml配置即可!
//第一种方式:使用 Spring 的 ActionSupport 类整合 Structs ...//第二种方式:使用 Spring 的 DelegatingRequestProcessor 覆盖 Struts 的 RequestProcessor //第三种方式:将 Struts Action 管理委托给 Spring 框架
默认org.apache.struts.action.RequestProcessor @tempDir:指定文件上传时的临时工作目录.如果没有设置,将才用Servlet容器为web应用分配的临时工作目录. @nochache:true时,在相应结果中加入特定的头参数:Pragma ,...
流程控制层 通过一个特定的请求处理器JAVA类:RequestProcessor.java,将客户端的请求(如:http://localhost:6888/myshop/shp/cart 转化成某个事件(如:CartEvent、OrderEvent...),并交给控制器类...
N-Tier式的分布式应用 表示层 JSP、HTML、DHTML、XML/XSL、JAVA BEAN、TAGLIB 流程控制层 通过一个特定的请求处理器JAVA类:RequestProcessor.java,将客户端的请求(如:http://localhost:6888/myshop/shp/cart 转化...
第4章到第7章深入探讨了Struts框架的核心组件ActionServlet和RequestProcessor的实现原理,详细介绍了开发Struts应用的模型、视图和控制器的各种技术,细致的描述了Struts配置文件的每个元素的使用方法。第8章到第9...
第4章到第7章深入探讨了Struts框架的核心组件ActionServlet和RequestProcessor的实现原理,详细介绍了开发Struts应用的模型、视图和控制器的各种技术,细致的描述了Struts配置文件的每个元素的使用方法。第8章到第9...
第4章到第7章深入探讨了Struts框架的核心组件ActionServlet和RequestProcessor的实现原理,详细介绍了开发Struts应用的模型、视图和控制器的各种技术,细致的描述了Struts配置文件的每个元素的使用方法。第8章到第9...
第4章到第7章深入探讨了Struts框架的核心组件ActionServlet和RequestProcessor的实现原理,详细介绍了开发Struts应用的模型、视图和控制器的各种技术,细致的描述了Struts配置文件的每个元素的使用方法。第8章到第9...
第4章到第7章深入探讨了Struts框架的核心组件ActionServlet和 RequestProcessor的实现原理,详细介绍了开发Struts应用的模型、视图和控制器的各种技术,细致的描述了Struts配置文件的每个元素的使用方法。...
第4章到第7章深入探讨了Struts框架的核心组件ActionServlet和 RequestProcessor的实现原理,详细介绍了开发Struts应用的模型、视图和控制器的各种技术,细致的描述了Struts配置文件的每个元素的使用方法。...
06 Struts_06Filter : 中文编码的统一处理,通过Struct的请求处理器接口RequestProcessor(中央控制器)来实现 07 Struts_07ForwardAction : 访问WebRoot/WEB-INF/下文件的一种方式 08 Struts_08DynaValidatorForm : ...