spring事务定义中,@Transactional(readOnly = true, propagation = Propagation.NOT_SUPPORTED) 这样定义有问题吗?

spring事务定义中,@Transactional(readOnly = true, propagation = Propagation.NOT_SUPPORTED) 这样定义有问题吗?

  • ekisstherain

    0 票

  • 1

我想知道在使用事务的情况下,我在方法使用注解定义事务,但是我定义一个只读属性和一个传播行为为not_supported属性的事务,这样合理吗,如果是这样定义,怎么理解呢?

评论 ( 0) •  分享 •  链接 •  2012-11-05 
2个答案
票 数 
  • zhangzixian003

    0 票

  • 1

前一个是只读属性没有问题,后边那个属性是这个方法不开启事务,好像不对,具体不敢肯定。。。

评论 ( 0) •  链接 • 2012-11-05
  • 小伙子Paddle

    0 票

  • 469

两者的定义是有冲突的
readOnly = true : 只读型事务
propagation = Propagation.NOT_SUPPORTED:以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。

评论 ( 2) •  链接 • 2012-11-05
  • 0
    如果存在冲突,那就有问题了:对于查询方法,是使用启动事务,设置只读属性readOnly为true好呢,还是使用传播属性为NOT_SUPPORTED好呢?那总方式性能更好? –  ekisstherain  2012-11-05
  • 0
    @ekisstherain 如果是查询并且不考虑脏数据的话,Transactional不加就最好了 –  小伙子Paddle 2012-11-05

你可能感兴趣的:(spring事务定义中,@Transactional(readOnly = true, propagation = Propagation.NOT_SUPPORTED) 这样定义有问题吗?)