Spring的使用Annotation以及XML进行声明式事务管理

Spring使用Annotation进行声明式事事务管理

实现的功能是在保存用户的时候向数据库中的表增加一条日志记录

首先,在配置文件中要添加事务的命名空间以及SchemaLocation

xmlns:tx=http://www.springframework.org/schema/tx

http://www.springframework.org/schema/tx

http://www.springframework.org/schema/tx/spring-tx-2.5.xsd

其次,要配置事务管理器

<tx:annotation-driven transaction-manager="txManager"/>

    <bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">

        <property name="sessionFactory" ref="sessionFactory"/>

    </bean>

再次,在想要进行事务管理的方法上面添加@Transactional注释


Spring使用XML进行声明式事务管理

首先和上面一样引入事务的命名空间以及SchemaLocation

其次,在配置文件中配置一下内容:

        <bean id="txManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>

<tx:advice transaction-manager="txManager" id="txAdvice">
<tx:attributes>
<tx:method name="getUser" read-only="true"/>
<tx:method name="add*" />
</tx:attributes>
</tx:advice>

<aop:config>
<aop:pointcut expression="execution(public * com.bjsxt.service..*.*(..))" id="myPointcut"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="myPointcut"/>
</aop:config>


你可能感兴趣的:(spring,bean,xml,数据库,Class)