Struts1.2 + Spring2.0 + Hibernate3.1
在Web.xml里的<web-app></web-app>里配置
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<!-- 过滤器 -->
<filter>
<filter-name>MyFilter</filter-name>
<filter-class>com.janely.filter.MyFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>MyFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>doFilter</filter-name>
<filter-class>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
</filter-class>
<init-param>
<param-name>singleSession </param-name>
<param-value>true </param-value>
</init-param>
</filter>
在struts-config.xml里
<struts-config>
<form-beans/>
<action-mappings>
<action
name="usersForm" parameter="op"
path="/users"
scope="request"
type="org.springframework.web.struts.DelegatingActionProxy" >
<forward name="index" path="/index.jsp"></forward>
<forward name="update" path="/UsersUpdate.jsp"></forward>
</action>
</action-mappings>
</struts-config>
在 applicationContext.xml 里配置
<!-- action -->
<bean name="/users" class="com.janely.struts.action.UsersAction">
<property name="usersB" ref="Userbiz"></property>
<property name="newsTypeB" ref="NewsTypebiz"></property>
</bean>
<!--事务-->
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
">
<bean id="MyHibTransactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<tx:advice id="txAdvice"
transaction-manager="MyHibTransactionManager">
<tx:attributes>
<tx:method name="add*" propagation="REQUIRED" read-only="true" />
<tx:method name="update*" propagation="REQUIRED" read-only="true"/>
<tx:method name="del*" propagation="REQUIRED" read-only="true" />
<tx:method name="do*" propagation="REQUIRED" read-only="true" />
<tx:method name="find*" propagation="REQUIRED" read-only="true"/>
<tx:method name="*" propagation="SUPPORTS" read-only="true" />
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="bizMethod"
expression="execution(* com.janely.com.*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="bizMethod" />
</aop:config>
</beans>