zoukankan      html  css  js  c++  java
  • 170831-关于声明式事务-事务属性的设置

    1.  事务属性的设置  @Transactional中的属性值
    2.  传播行为
       propagation=Propagation.REQUIRED是默认值 会按外层事务来,当下面的事务有错时,也会回滚
       propagation=Propagation.SUPPORTS按外层的来,外层没有,就相当于没有这个事务
       propagation=Propagation.REQUIRES_NEW 按自己的来,当下面的事务有错时,他不会回滚
    3.  隔离级别
       isolation=Isolation.REPEATABLE_READ是默认值,可重复读,在查询了某个值之后,打了断点,修改数据库中的值,再次查询,还是原来的数
       isolation=Isolation.READ_COMMITTED 提交读取,当上述情况,再次查询时就是新改的值
    4. 事务根据什么异常不进行回滚
      noRollbackFor=ArithmeticException.class默认为有异常就回滚,现在设置为出现运算异常不回滚
    5. 事务的超时属性
      timeout=3 这个3秒指的是有没有3秒之内执行完sql语句,如果没有事务回滚,相当于对该操作进行撤销,避免浪费资源
    6. 事务的只读属性
      readOnly=true数据库会对事务进行优化,如果是一个查询操作,那么数据库可以有针对性的进行优化。我们可以通过设置事务属性,告诉数据库当前操作是一个只读操作,便于数据库进行优化。
  • 相关阅读:
    安卓渗透测试环境搭建笔记
    spring boot Thymeleaf 模板注入 测试实践
    分析activity安全检测实践
    xposed的使用实践
    android组件安全测试实践
    Apache Dubbo Provider默认反序列漏洞复现实践(CVE-2020-1948)
    java设计模式--策略模式
    spring 发送email
    简单介绍
    有意义的礼物——英语小短文
  • 原文地址:https://www.cnblogs.com/12344321hh/p/7459584.html
Copyright © 2011-2022 走看看