Mybatis详细的执行流程
Mybatis详细的执行流程
SqlSessionFactoryBuilder通过构造器build调用build构造方法
build构造方法调用XMLConfigBuilder这个类解析了
(inputStream, environment, properties)
解析完后传给Configuration这个对象(Configuration中包含了所有的配置内容)
之后SqlSessionFactory实例化,获取sqlSession(事务在这一层去做,相当于原来的Connection)
sqlSession里面有一个executor执行器,executor执行mapper,mapper通过反射加载出类的所有信息,包括了sqlSession,sqlSession中又有缓存executor执行器(executor把自己套进去了),套进去后开始执行sql语句,sql从配置文件中读取.
成功执行sql语句提交事务,失败回滚.
对第5步做一些简单的解释: sqlSession中包括了运行一个sql语句所需的条件,包括事务,执行器,加载器等.但就是没有sql语句,于是通过反射获取到了接口以及接口下类的所有信息,就有了sql语句,mapper只是放这所有信息的变量 . 于是有条件又有语句就可以执行sql语句了.
相关推荐
xiuyangsong 2020-11-16
Nishinoshou 2020-11-09
jimgreatly 2020-09-01
dongxurr 2020-08-18
Dullonjiang 2020-08-15
Dullonjiang 2020-08-11
Dullonjiang 2020-08-09
dongxurr 2020-08-08
yunzhonmghe 2020-08-07
jimgreatly 2020-08-03
Dullonjiang 2020-07-30
jimgreatly 2020-07-27
liqiancao 2020-07-26
xiuyangsong 2020-07-26
dongxurr 2020-07-26
mcvsyy 2020-07-26
helloxusir 2020-07-25
牧场SZShepherd 2020-07-20