Mybatis、Mybatis整合Spring的流程图

2023-12-13 11:38:13

Mybatis

在这里插入图片描述
注意MapperProxy里面有invoke方法,当进到invoker方法会拿到

二、mybatis整合Spring

1、当我们的拿到的【Dao】其实就是【MapperProxy】,执行Dao的方法时,
会被MapperProxy的【Invoke方法拦截】
2、图上已经标注了MapperProxy包含哪些属性,在Invoke方法里面,就是通过这些属性,【执行sql】。

在这里插入图片描述

1MybatisSpring整合后,获取Dao的代理对象是通过MapperFactoryBean,而不是之前的MapperProxyFactory,
2、但是MapperFactoryBean其实也是间接从MapperProxyFactory里面拿到的。

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

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

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

6、整个过程,进了【2个不同的Invoke方法】,这就是Spring实现事务等额外逻辑的处理




文章来源:https://blog.csdn.net/weixin_37862824/article/details/134902127
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。