@Transaction注解的readOnly属性

    @Transactional注解是用来配置事务操作的注解,可以作用于类和方法上,其中readOnly为其只读注解,我在查阅资料得知其具有以下功能

    我的理解是开启只读属性后(readOnly=true),对于增删改就不具有事务属性了,所以对此做一个验证如下:

方式一:不设置任何注解

在不设置任何注解的情况下,在插入后抛出异常

系统抛出异常

但是数据库仍然增加了数据,说明没有事务回滚(废话,没有配置当然不会回滚!)

方式二:配置@Transactional注解


执行同样的插入语句


数据库没有发生变化,说明注解生效


方式三:配置@Transactional(readOnly=true)注解


还是执行同样的插入语句,数据库依然没有变化,说明事务仍然有效


总结:从试验的结果来看,只要配置了@Transactional注解后就会启动事务控制,readOnly的属性值好像并没有看出来有什么作用

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值