zoukankan      html  css  js  c++  java
  • @Transactional的readOnly、timeout

    1、@Transactional的readOnly

    在使用@Transactional注解的时候,有一个属性是readOnly,默认值是false

    readOnly的意思就是当前的方法是只读的,也就是说当前的方法中没有需要处理事务(insert,update,delete的操作。则可以加上readOnly=true

    使用它的好处是Spring会把你优化这方法,使用了readOnly=true,也就是使用了一个只读的connection。效率会高很多

    例如:如下方法,userAdd肯定用到了insert操作。此时加上readOnly=true的话则会报错,插入不成功。

    1
    2
    3
    4
    @Transactional(readOnly=true)
    public void userAdd(User user) {
        userDao.userAdd(user);
    }

    readOnly的使用场景:

    1、只有查询操作的方法上(查询量比较大)

    2、确保当前方法不会出现insert,update,delete情况时,可以使用readOnly=true

    3、防止当前方法会出现insert,update,delete

    2、@Transactional的timeout

    事务的超时时间:Transaction时间太长的话,将它停止掉。默认-1





  • 相关阅读:
    2-2. 然后是几点(15)
    2-1. 厘米换算英尺英寸(15)
    2-0. 整数四则运算(10)
    忙碌的下半学期
    ACM 第十九天
    ACM 第十八天
    ACM 第十七天
    凸包模板
    极角排序常用方法
    ACM 第十六天
  • 原文地址:https://www.cnblogs.com/meet/p/4762441.html
Copyright © 2011-2022 走看看