zoukankan      html  css  js  c++  java
  • Spring的事务到底该给Dao配置还是给Service配置?

    Spring事务为业务逻辑进行事务管理,保证业务逻辑上数据的原子性。

    事务得根据项目性质来细分:事务可以设置到三个层面(dao层、service层和web层)。
    第一:web层事务,这一般是针对那些安全性要求较高的系统来说的。例如电子商务网站。粒度小,一般系统用不着这么细。
    第二:service层事务,这是一常见的事务划分, 将事务设置在业务逻辑上,只要业务逻辑出错或异常就事务回滚。粒度较小,一般推荐这种方式。
    第三:数据持久层数据务,也就是常说的数据库事务。这种事务在安全性方面要求低。就是给一个简单的增删改之类的操作增加事务操作。粒度大

    给Service层配置事务,因为一个Service层方法操作可以关联到多个DAO的操作。在Service层执行这些Dao操作,多DAO操作有失败全部回滚,成功则全部提交。

    事务分为业务事务和系统事务,业务事务也就是业务逻辑上操作的一致性,系统事务自然就是指真正的数据库事务,

    Spring配置事务的是为了什么进行管理,当然是为业务逻辑进行事务管理,保证业务逻辑上数据的原子性;
    Dao层是什么,数据访问层,是不应该包含业务逻辑的,这就是和Service层的不同;
    Service层就是业务逻辑层,事务的管理就是为Service层上的保证。

    ---------------------------------------------------------------------------------
    Blog:http://www.cnblogs.com/linjiqin/
    Hadoop交流群(250363249)、Java+Oracle交流群(158560018)

    题外话:
    本人来自铁观音的发源地——泉州安溪,有需要正宗安溪铁观音的友友欢迎Q我:416501600。

  • 相关阅读:
    Software Solutions CACHE COHERENCE AND THE MESI PROTOCOL
    CACHE COHERENCE AND THE MESI PROTOCOL
    Multiprocessor Operating System Design Considerations SYMMETRIC MULTIPROCESSORS
    Organization SYMMETRIC MULTIPROCESSORS
    PARALLEL PROCESSING
    1分钟内发送差评邮件
    Secure Digital
    SYMMETRIC MULTIPROCESSORS
    A Taxonomy of Parallel Processor Architectures
    parallelism
  • 原文地址:https://www.cnblogs.com/linjiqin/p/3441813.html
Copyright © 2011-2022 走看看