Spring2.x提供了tx命名空间来配置事务管理.<tx:advice>来配置事务切面.
<bean id="transactionManager" class="org.springframework.jdbc.dataSource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
*****使用tx:advice配置事务切面
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<!--配置事务的详细语义-->
<tx:attributes>
<tx:method name="get*" read-only="true" />
<tx:method name="*"/>
</tx:attributes>
</tx:advice>
<aop:config>
<!--指定切入点-->
<aop:pointcut id="pointcut" expression="* cn.edu.hdc.*.*(..)"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="poingcut" />
</aop:config>
[color=red]***aop:advisor用于配置一个advisor,在标准的AOP中并不存在,是spring1.x留下来的东西.aop:advisor用于将pointcut和advice绑定在一起[/color]
<bean id="transactionManager" class="org.springframework.jdbc.dataSource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
*****使用tx:advice配置事务切面
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<!--配置事务的详细语义-->
<tx:attributes>
<tx:method name="get*" read-only="true" />
<tx:method name="*"/>
</tx:attributes>
</tx:advice>
<aop:config>
<!--指定切入点-->
<aop:pointcut id="pointcut" expression="* cn.edu.hdc.*.*(..)"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="poingcut" />
</aop:config>
[color=red]***aop:advisor用于配置一个advisor,在标准的AOP中并不存在,是spring1.x留下来的东西.aop:advisor用于将pointcut和advice绑定在一起[/color]