第一种事物注解的方式:
<tx:annotation-driven transaction-manager="transactionManager" />对@Transactional这个注解进行的驱动,这是基于注解的方式使用事务配置声明,这样在具体应用中可以指定对哪些方法使用事务
spring.xml
<!-- 数据源 jndi方式 -->
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="jdbc/tpsds" />
<property name="resourceRef" value="true" />
</bean>
<!-- 数据连接管理 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<!-- 事务注解支持-->
<tx:annotation-driven transaction-manager="transactionManager" />
Spring中事务管理支持哪两种方式?并说明他们的优缺点?列举几个Spring事务管理器?列举几种Spring事务管理的配置方法?
答:
1..Spring可以通过程序控制和声明两种方式管理事务。程序控制可以精确的控制事务回滚的节点,但是程序与业务代码耦合在一起;声明方式低耦合,但是在对于复杂事务的控制上不如程序控制的方式。
2.jdbc做事务管理器,hibernate事务控制管理器,JdoTransactionManager,JtaTransactionManager,OJB事务管 理器
3.有五种配置方法:
第一种:每个bean都有一个代理;
第二种:所有bean共享一个代理基类;
第三种:使用拦截器
第四种:使用tx标签配置管理器
第五种:全注释