Mybatis工作流程

2018-12-04  本文已影响0人  spiderM

Mybatis是目前非常流行的ORM(Object Relational Mapping)框架,本文主要简单梳理一下Mybatis的工作流程。

1.加载配置文件

Mybatis的配置文件一共有两类:

加载到内存中会生成一个对应的MappedStatement对象,然后会以key="selectId" ,value为MappedStatement对象的形式维护到Configuration的一个Map中。当以后需要使用的时候,只需要通过Id值来获取就可以了。

2.产生sqlSession

根据配置文件创建SQLSessionFactory,再由工厂产生sqlSession,SqlSession根据Statement ID, 在mybatis配置对象Configuration中获取到对应的MappedStatement对象,然后调用mybatis执行器来执行具体的操作。使用Mapper方式操作sql,利用的是动态代理,不用实现mapper接口,通过接口中的方法名来查找到对应的方法名

3.MyBatis执行器Executor根据SqlSession传递的参数执行query()方法

Executor.query()方法几经转折,最后会创建一个StatementHandler对象,然后将必要的参数传递给StatementHandler,使用StatementHandler来完成对数据库的查询,最终返回List结果集。

上一篇下一篇

猜你喜欢

热点阅读