Mybatis、Mybatis整合Spring的流程图

Mybatis

注意MapperProxy里面有invoke方法,当进到invoker方法会拿到

二、mybatis整合Spring

java 复制代码
1、当我们的拿到的【Dao】其实就是【MapperProxy】,执行Dao的方法时,会被MapperProxy的【Invoke方法拦截】
2、图上已经标注了MapperProxy包含哪些属性,在Invoke方法里面,就是通过这些属性,【执行sql】。
java 复制代码
1、Mybatis和Spring整合后,获取Dao的代理对象是通过MapperFactoryBean,而不是之前的MapperProxyFactory,
2、但是MapperFactoryBean其实也是间接从MapperProxyFactory里面拿到的。

3、拿到MapperProxy,执行Dao的方法会被MapperProxy的Invoke方法拦截,这里和Mybatis是一样的。

4、这里的Invoke方法拦截后,是转到了SqlSessionTemplate,由SqlSessionTemplate的属性sqlSessionProxy
执行sql

5、在sqlSessionProxy里面也有一个Invoke方法,里面进一步对事物的进行了封装。

6、整个过程,进了【2个不同的Invoke方法】,这就是Spring实现事务等额外逻辑的处理
相关推荐
OLDERHARD21 分钟前
Java - MyBatis(上)
java·oracle·mybatis
杨半仙儿还未成仙儿5 小时前
Spring框架:Spring Core、Spring AOP、Spring MVC、Spring Boot、Spring Cloud等组件的基本原理及使用
spring boot·spring·mvc
攸攸太上9 小时前
Spring Gateway学习
java·后端·学习·spring·微服务·gateway
计算机学姐12 小时前
基于SpringBoot+Vue的高校运动会管理系统
java·vue.js·spring boot·后端·mysql·intellij-idea·mybatis
无理 Java14 小时前
【技术详解】SpringMVC框架全面解析:从入门到精通(SpringMVC)
java·后端·spring·面试·mvc·框架·springmvc
gobeyye14 小时前
spring loC&DI 详解
java·spring·rpc
我是浮夸14 小时前
MyBatisPlus——学习笔记
java·spring boot·mybatis
java66666888815 小时前
Java中的对象生命周期管理:从Spring Bean到JVM对象的深度解析
java·jvm·spring
王维诗里的代码i17 小时前
Redis基础二(spring整合redis)
java·数据库·redis·spring
椰椰椰耶18 小时前
【Spring】@RequestMapping、@RestController和Postman
java·后端·spring·mvc