Spring 雇员管理系统SSH 4

Spring接管structs(action控件)

   

如果action没有交给spring管理时,我们通过下面语句获取spring容器实例

WebApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(this.getServlet().getServletContext());

action交给spring管理后,我们可以使用依赖注入在action中注入业务层的bean。确保actionpath属性值与bean的名称相同。

<action path="/login" ...>

</action>

   

struts配置文件structs-config.xml中添加进spring的代理请求控制器DelegatingRequestProcessor

<controller>

<set-property property="processorClass" value="org.springframework.web.struts.DelegatingRequestProcessor"/>

</controller>

该请求 控制器会先根据actionpath属性值到spring容器中寻找跟该属性值同名的bean。如果寻找到即使用该bean处理用户请求

   

如果不配置控制器,原始的情形下浏览器请求的流程

   

首先是浏览器中有个login.do

http://xxxxx/login.do

   

然后交给web服务器

   

web服务器去找ActionService,这个相当于总控

   

ActionService中根据structs-config.xml文件中配置的属性找到处理Action的类,loginAction.java,然后处理

   

如果配置了请求控制器,那么Spring接管Action的配置

Spring的配置文件applicationContext.xml中配置Action路径如下:

<bean name="/login" class="com.hsp.web.action.LoginAction"/>

   

   

posted @ 2015-03-24 20:36  keedor  阅读(292)  评论(0编辑  收藏  举报