tnblog
首页
视频
资源
登录

事务基础概念&Spring事务核心对象简介 01

4045人阅读 2022/7/21 19:18 总访问:1590090 评论:0 收藏:0 手机
分类: spring

一、

二、事务隔离级

脏读:允许读取未提交的信息

  • 原因: Read uncommitted(读了未提交的数据)

  • 解决方案: Read committed(表级读锁)

不可重复读:读取过程中单个数据发生了变化(如:第1次读完数据后,该条数据被别人改了,第2次再读就导致两次数据不一致)

  • 解决方案: Repeatable read(行级写锁)

幻读:读取过程中数据条目发生了变化(如:第1次读完数据后,对表进行增删改等操作,第2次再读就导致两次数据不一致)

  • 解决方案: Serializable(表级写锁)

三、Spring事务核心对象

  • J2EE开发使用分层设计的思想进行,对于简单的业务层转调数据层的单一操作,事务开启在业务层或者数据层并无太大差别,当业务中包含多个数据层的调用时,需要在业务层开启事务,对数据层中多个操作进行组合并归属于同一个事务进行处理

 Spring为业务层提供了整套的事务解决方案

  • PlatformTransactionManager

  • TransactionDefinition

  • TransactionStatus


1、PlatformTransactionManager

平台事务管理器实现类                         

  • DataSourceTransactionManager         适用于Spring JDBC或MyBatis                 

  • HibernateTransactionManager            适用于Hibernate3.0及以上版本                   

  • JpaTransactionManager                      适用于JPA                                                   

  • JdoTransactionManager                      适用于JDO                                                  

  • JtaTransactionManager                       适用于JTA


  • JPA (Java Persistence API) Java EE标准之一,为POJO提供持久化标准规范,并规范了持久化开发的统一API,符合JPA规范的开发可以在不同的JPA框架下运行

  • JDO(Java Data Object )是Java对象持久化规范,用于存取某种数据库中的对象,并提供标准化API。与JDBC相比,JDBC仅针对关系数据库进行操作,JDO可以扩展到关系数据库、文件、XML、对象数据库(ODBMS)等,可移植性更强

  • JTA(Java Transaction APl) Java E标准之一,允许应用程序执行分布式事务处理。与JDBC相比,JDBC事务则被限定在一个单一的数据库连接,而一个JTA事务可以有多个参与者,比如JDBC连接、JDO都以参与到一个JTA事务中

1.1、

2、

3、

刷新事务状态:如果操作过程中事务发生了变化,你可以刷新事务状态。

获取事务是否具有回滚存储点:如果你设有回滚点的话,可以看看是否具有回滚点,有回滚点和没有回滚点的操作是不一样的。一个是回滚全部,另一个是回滚一部分。


评价

vs2017 对 COM 组件的调用返回了错误 HRESULT E_FAIL

vs2017添加引用报错 对 COM 组件的调用返回了错误 HRESULT E_FAIL 1.以管理员身份打开vs2017开发人员命令指示符 2...

NPOI操作excel 2007/2010版本

HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xlsXSSFWorkbook:是操作Excel2007的版本,扩展名是.xlsx先...

NesTable设置不能拖动

让 Nestable 组件不能拖动,直接在jquery.nestable.js 文件中源码搜索var onStartEvent = function(e) 方法里面的list.drag...

让IIS支持webp格式图片让IIS支持vtt格式,iis设置mime类型,iis配置支持的类型

webp格式图片可以让图片体积变小。也让下载图片变得更加困难一点 在线制作webp工具 https://www.upyun.com/webp?utm_mediu...

DIV+CSS网页布局常用的一些基础知识整理

一.文件命名规范全局样式:global.css;框架布局:layout.css;字体样式:font.css;链接样式:link.css;打印样式:print...

异步线程轮询的demo

创建一个控制台应用程序,代码如下:usingSystem; usingSystem.Threading; namespaceConsoleApplication1 { publicdele...

怎么解决vs2015的30天试用期评估结束问题

早上刚打开项目,一脸懵逼,才一个晚上,怎么VS突然就不能用了...显示30天试用期评估结束第一个反应是要收费了,搜了下才知...

用Linq解决商品和其下sku的筛选排序查询

本是sql to linq的东西,但是用的框架是.core 2.1,所以就归到core里吧最近遇到一个稍微复杂点的小问题需求:商城的商品列...

怎样解决安卓在微信浏览器对于第三方网页的两次请求问题?

之前的项目是没有这种情况的,但是最近发现安卓手机在微信浏览器访问第三方网页时,页面点击某个按钮,写日志显示只触发了...

天地图的使用

2018.04.17号,我来到了我现在的这个公司,公司是做地理信息的,是中地数码集团在成都的合署公司,既然都说了是左地理信息...

C解决execl中的ROUNDUP函数

最近做物流系统再excel中遇到了ROUNDUP函数:和四舍五入不一样,它的用途是无论取值后的值是多少,除了0,都向上+1如 ROUND...

配置Java环境

安装jdk 地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html这就不一一赘述了...

解决VS2017添加引用失败问题

VS2017添加引用失败 ,报错:找不到 Microsoft.VisualStudio.Shell.Interop.IVsReferenceManager 服务的实例一:打开vs2017...

vs2017VS2019调试不单独打开浏览器,解决自动退出调试

刚开始使用vs2017时,调试web程式,vs2017总是会单独打开一个浏览器来运行程式debug结束后,打开的浏览器就会自动关闭,有时...

跨域请求数据

在网上找了一大片跨域请求的问题都没有解决必须要好生说一下问题:当在前台跨域请求的时候的发现控制台会报错,但访问是访...
没有个性,不需要签名
排名
4
文章
473
粉丝
3
评论
2
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术