spring+hibernate事务配置最简单的方式

本配置文件在自建工程中测试通过.

	<!-- 配置事务管理器,需要依赖注入一个sessionFactory. -->
	<bean id="transactionManager"
		class="org.springframework.orm.hibernate3.HibernateTransactionManager">
		<property name="sessionFactory">
			<ref local="sessionFactory" />
		</property>
	</bean>
	<!--  配置事务拦截器,需要依赖注入一个事务管理器,指明事务的传播属性。-->
	<bean id="transactionInterceptor"
		class="org.springframework.transaction.interceptor.TransactionInterceptor">
		<property name="transactionManager" ref="transactionManager" />
		<property name="transactionAttributes">
			<props>
				<prop key="*">PROPAGATION_REQUIRED</prop>
			</props>
		</property>
	</bean>
	<!--
		定义BeanNameAutoProxyCreator,该bean是个bean后处理器,无需被引用,因此没有id属性,指定对满足哪些bean
		name的bean自动生成业务代理
	-->
	<bean
		class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
		<property name="beanNames">
			<list>
				<value>/save*</value>
				<value>/delete*</value>
			</list>
		</property>
		<property name="interceptorNames">
			<list>
				<value>transactionInterceptor</value>
			</list>
		</property>
	</bean>

   这种基于拦截器的配置,比较方便,而且灵活,在代码中不同考虑事务,而且完全通过配置来实现,能够比较灵活的控制事务的边缘。

你可能感兴趣的:(spring,Hibernate,bean,测试)