spring事务

一.注解方式创建事务

1.配置文件

(1)创建事务管理器

<bean id="TransactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
</bean>

(2)开启事务注解

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

(3)在要添加事务的方法或者类上加上@Transactional,若加在类上,则类所有的方法都添加事务。

该注解中有一些参数

①propagation事务的传播行为

spring事务

②ioslation事务的隔离性

与之前mysql事务的隔离性类似

③timeout超时时间

事务在设置时间内要提交,不然回滚(默认值为-1)

④readOnly是否只读

默认值为false,可以增删改查,设置成true后只能查询。

⑤rollbackFor回滚

设置哪些异常要回滚

⑤noRollbackFor不回滚

设置哪些异常不要回滚

二.xml配置创建事务

与注解方式相比,没有开启事务注解和@Transactional。

再加上

1.配置通知

 <tx:advice id="名字">
        <tx:attributes>
            <tx:method name="要加事务的方法名"/>//还可以加入注解中参数有的属性
        </tx:attributes>
    </tx:advice>

2.配置切入点

<aop:config>
        <aop:pointcut id="pt" expression="execution表达式"/>
        <aop:advisor advice-ref="名字" pointcut-ref="pt"></aop:advisor>
    </aop:config>

上一篇:noip2019集训测试赛(六)B.匹配


下一篇:commons-lang3中DateUtils类方法介绍