java事务 Dao层_spring事务到底用于service层还是dao层
Spring事务为业务逻辑进行事务管理,保证业务逻辑上数据的原子性。
事务得根据项目性质来细分:事务可以设置到三个层面(dao层、service层和web层)。
第一:web层事务,这一般是针对那些安全性要求较高的系统来说的。例如电子商务网站。粒度小,一般系统用不着这么细。
第二:service层事务,这是一常见的事务划分, 将事务设置在业务逻辑上,只要业务逻辑出错或异常就事务回滚。粒度较小,一般推荐这种方式。
第三:数据持久层数据务,也就是常说的数据库事务。这种事务在安全性方面要求低。就是给一个简单的增删改之类的操作增加事务操作。粒度大
给Service层配置事务,因为一个Service层方法操作可以关联到多个DAO的操作。在Service层执行这些Dao操作,多DAO操作有失败全部回滚,成功则全部提交。
事务分为业务事务和系统事务,业务事务也就是业务逻辑上操作的一致性,系统事务自然就是指真正的数据库事务,
Spring配置事务的是为了什么进行管理,当然是为业务逻辑进行事务管理,保证业务逻辑上数据的原子性;
Dao层是什么,数据访问层,是不应该包含业务逻辑的,这就是和Service层的不同;
Service层就是业务逻辑层,事务的管理就是为Service层上的保证。
java事务 Dao层_spring事务到底用于service层还是dao层相关推荐
- spring事务到底用于service层还是dao层
Spring事务为业务逻辑进行事务管理,保证业务逻辑上数据的原子性. 事务得根据项目性质来细分:事务可以设置到三个层面(dao层.service层和web层). 第一:web层事务,这一般是针对那些安 ...
- mysql事务传播属性_Spring事务传播属性和隔离级别详细介绍
1 事务的传播属性(Propagation) 1) REQUIRED ,这个是默认的属性 Support a current transaction, create a new one if none ...
- java 回滚异常_Spring事务管理只对出现运行期异常进行回滚
Spring的事务管理默认只对出现运行期异常(java.lang.RuntimeException及其子类)进行回滚. 如果一个方法抛出Exception或者Checked异常,Spring事务管理默 ...
- 事务里面捕获异常_spring 事务回滚
1.遇到的问题 当我们一个方法里面有多个数据库保存操作的时候,中间的数据库操作发生的错误.伪代码如下: 期待的情况:发生错误之前的所有数据库保存操作都回滚,即不保存 正常情况:前面的数据库操作会被执行 ...
- java spring 事务传播_spring事务传播机制实例讲解
天温习spring的事务处理机制,总结如下 对于SQL事务的概念以及ACID性质,可以参见我的另一篇博文 http://kingj.iteye.com/admin/blogs/1675011 spri ...
- java事务传播机制事例_Spring事务传播机制
addBook()代码 Java代码 收藏代码 public void addBook() throws Exception{ this.jdbcTemplate.execute(ADD_BOOK) ...
- java 配置嵌套事务_Spring 事务嵌套的配置
问题 在使用Spring管理Service层事务时,会遇到service方法事务嵌套的问题. 默认情况下,service方法有自己独立的事务,如果一个复杂的service方法中,调用了多个事务操作,中 ...
- java 事务实现原理_Spring中事务用法示例及实现原理详解
前言 Spring并不直接管理事务,而是提供了多种事务管理器,他们将事务管理的职责委托给Hibernate或者JTA等持久化机制所提供的相关平台框架的事务来实现. 关于事务,简单来说,就是为了保证数据 ...
- java事务什么时候回滚_spring事务什么时候会自动回滚
在java中异常的基类为Throwable,他有两个子类xception与Errors.同时RuntimeException就是Exception的子类,只有RuntimeException才会进行回 ...
最新文章
- 空缺十年,百度再任命CTO!加盟十年,王海峰现集AI大权为一身
- 网站排名好却没流量到底是什么环节出了问题?
- linux 指令tftp传输文件_Linux tftp 命令用法详解-Linux命令大全(手册)
- 详解Python中的JSON以及在Python中使用JSON
- LeetCode 101对称二叉树-简单
- android 使用Binder通信
- python判断密码是否正确三次机会_python密码错误三次锁定(实例讲解)
- Spring高级之注解@Bean详解(超详细)
- Oracle主要概念汇总
- 2018大厂高级前端面试题汇总
- 关于visual studio 2005的中文版下载(最新详细下载点)
- 把老婆训练成女黑客的漏洞大神黄正|宅客故事
- Linux怎么进入根目录查看文件
- 【实战总结】根据地图经纬度及范围查询坐标点信息
- 程序员接私活的6个网站,你有技术就有钱!
- SQL 取数值小数后两位,但不四舍五入。
- Pycharm的快捷键
- Linux删除只读文件系统
- pytest之执行测试pytest.main()的使用
- 【题解】同济线代习题二 8.1
热门文章
- 互联网时代的改变,零食品牌崛起,传统零食产业如何“逆袭”?
- 2022最新小米手机报价单曝光了
- 罗友之家服务器文件管理升级小记
- PHP开发的爱养车网站源码 养车O2O平台源码
- noi题库(noi.openjudge.cn) 1.7编程基础之字符串T31——T35
- GAERF: predicting lncRNA-disease associations by graph auto-encoder and random forest(通过图自动编码器和随机森林)
- 第36讲: 使用Jeb工具反编译安卓APK
- spark on k8s: master pod kube-proxy-mkbp7 Evicte -- The node was low on resource: ephemeral-storag
- Day3 确知信号的类型、频域性质和时域性质
- 宅男程序员不会告诉你用Java实现用一张照片进行GPS定位这么简单