首先,要把applicationContext.xml加载一内存..
web.xml
================
<!-- 根据需要可能要添加侦听器 -->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml,/WEB-INF/applicationContext-chikaren.xml,/WEB-INF/applicationContext-fakaren.xml,/WEB-INF/applicationContext-geren.xml,/WEB-INF/applicationContext-shanghu.xml,/WEB-INF/applicationContext-yunying.xml</param-value>
</context-param>
把struts-config.xml中的Action都定义成org.springframework.web.struts.DelegatingActionProxy,这是一个代理action,
请求都会先提交给这个代理action,然后这个代理action会提交给内存中applicationContext.xml配置与当前请求路径同名path的bean,这里同名的bean才是struts框架下的action,真正的业务在这里实现.同时applicationContext.xml作为一个插件配置在struts-config.xml文件中...
struts-config-geren.xml
=======================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
<data-sources />
<form-beans>
<form-bean name="testForm"
type="com.jifen.struts.form.TestForm" />
<form-bean name="uareaForm"
type="com.jifen.struts.form.UareaForm" />
<form-bean name="cConsumerForm"
type="com.jifen.struts.form.CConsumerForm" />
<form-bean name="uholdcardForm"
type="com.jifen.struts.form.UholdcardForm" />
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings>
<action attribute="testForm" input="/test.jsp" name="testForm"
path="/test" scope="request"
type="org.springframework.web.struts.DelegatingActionProxy">
<forward name="success" path="/index.jsp" />
</action>
<action attribute="uareaForm" name="uareaForm"
parameter="method" path="/uarea" scope="request"
type="org.springframework.web.struts.DelegatingActionProxy" />
<action attribute="cConsumerForm" name="cConsumerForm"
path="/shangHu" parameter="method" scope="request"
type="org.springframework.web.struts.DelegatingActionProxy">
<forward name="shList" path="/FaKaRen/htm/shList.jsp" />
</action>
<action attribute="uholdcardForm" name="uholdcardForm"
parameter="method" path="/uholdcard" scope="request"
type="org.springframework.web.struts.DelegatingActionProxy"
input="/GeRen/register.jsp" validate="false">
<forward name="login" path="/GeRen/userlogin.jsp"
redirect="true">
</forward>
</action>
</action-mappings>
<message-resources
parameter="com.jifen.struts.ApplicationResources" />
<plug-in
className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"
value="/WEB-INF/applicationContext-geren.xml" />
</plug-in>
</struts-config>
applicationContext-geren.xml
===========================
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean name="/test" class="com.jifen.struts.action.TestAction"
abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
<property name="ousersDAO">
<ref bean="ousersDAO" />
</property>
</bean>
<bean name="/uholdcard" class="com.jifen.struts.action.UholdcardAction"
abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
<property name="uholdcardDao">
<ref bean="uholdCardDAO" />
</property>
<property name="certiDao">
<ref bean="ucertificateDAO"/>
</property>
<property name="areaDao">
<ref bean="uareaDAO"/>
</property>
</bean>
</beans>