struts+spring的配置方式总结

现在最流行的j2ee的程序,一般都是用struts+spring+hibernate框架做的,spring+hibernate的配置方式很简单,这里就不说了,下面对struts+spring的几种配置方式做个总结,

第一种方式
1.创建BaseAction类,它继承Action类,以后所有action类都继承BaseAction这个类。
   比如:public class BaseAction extends Action {
                  private ApplicationContext applicationContext;
                 //private Service1 service1;
                 //private Service2 service2;
                 public ApplicationContext getApplicationContext() {
                 return applicationContext;
              }
2.在web.xml中加入
  <listener>
   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
----------------------------------------------------------------------------------------------
第二种方式
1.所有action类都继承ActionSupport类
2.在web.xml中加入
  <listener>
   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
----------------------------------------------------------------------------------------------
第三种方式
1.在struts-config.xml中的所有action的type里写org.springframework.web.struts.DelegatingActionProxy
  而不写action的类路径位置
2.在struts-config.xml中加入
  <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
   <set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml"/>
  </plug-in> 
3.applicationContext.xml中加入
  <bean name="/struts-config.xml中的action" class="struts-config.xml中的action的真实类路径">
 <property name="业务对象">
  <ref local="代理对象"/>
 </property>
  </bean>
----------------------------------------------------------------------------------------------
第四种方式
1.在struts-config.xml中加入
 <controller processorClass="org.springframework.web.struts.DelegatingRequestProcessor">
 </controller>

2.applicationContext.xml中加入
  <bean name="/struts-config.xml中的action" class="struts-config.xml中的action的类路径">
 <property name="业务对象">
  <ref local="代理对象"/>
 </property>
  </bean>
3.在web.xml中加入
 <listener>
   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>


以上是我所知道的四种配置方式,应该就这四种方式,本人感觉第三种配置方式比较好,通过struts的插件
方式把spring加过来,加多个spring的配置文件比较方更,只要在<set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml"/>的value中通过“,”分隔可以加多个spring的配置方件。

如果你有什么更好的方式,或有什么建议请给我留言。

你可能感兴趣的:(spring,Hibernate,struts,service,Class,action)