zoukankan      html  css  js  c++  java
  • Spring 声明式事务管理

    |—————————————————本文主要介绍如何在 Spring 中配置声明式事务管理 —————————————————| 

      一、事务

        事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。

      事务应该具有4个属性:原子性、一致性、隔离性、持续性。这四个属性通常称为 ACID 特性。

        1.原子性(atomicity):一个事务是一个不可分割的工作单位,事务中包括的诸多操作要么都做,要么都不做。

        2.一致性(consistency):事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性和原子性是密切相关的。

        3.隔离性(isolation):一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发

         执行的各个事务之间不能相互干扰。

        4.持续性(durability):持续性又称持久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。

         接下来的其他操作或故障不应该对其有任何影响。

      二、配置事务管理器

    <!-- 配置事务 -->
    <!-- 配置Hibernate的局部事务管理器,使用HibernateTranscationManager类 -->
    <!-- 该类实现PlatformTransactionManager接口,是针对Hibernate的特定实现 -->
    <bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
      <!-- 配置HibernateTranscationManager是需要注入SessionFactory的引用 -->
      <property name="sessionFactory" ref="sessionFactory"></property>
    </bean>

      三、添加注解

         service 包中的类或者是具体的方法加上注解 @Transactional,如果是不用对数据进行修改的方法要添加一个属性

        比如:查询所有数据的方法 @Transactional(readOnly=true) 

          

          

    |———————————————————— Spring 中配置声明式事务管理到此结束 ————————————————————| 

     

  • 相关阅读:
    【L.M.W.Y.D】Scrum Meeting 2
    【L.M.W.Y.D】Scrum Meeting 1
    L.M.W.Y.D 实验八 团队作业4—团队项目需求建模与系统设计
    L.M.W.Y.D 实验七 团队作业3:团队项目需求分析与原型设计
    L.M.W.Y.D 实验六 团队作业2:健康管理系统
    L.M.W.Y.D 实验五 团队作业1:软件研发团队组建与软件案例分析
    多喝热水 [Alpha] Scrum Meeting 3
    多喝热水 [Alpha] Scrum Meeting 2
    多喝热水 [Alpha] Scrum Meeting 1
    多喝热水 实验八 团队作业4:团队项目需求建模与系统设计
  • 原文地址:https://www.cnblogs.com/wangmk/p/5980727.html
Copyright © 2011-2022 走看看