Mybatis执行流程剖析

11、Mybatis注解开发

11.1、底层实现机制主要用到了反射

  1. 接口

    @Select("select * from tb_user ")
    List<UserBean> getUserList(UserBean userBean);
    
  2. 配置

<!--注册mapper,每一个mapper都需要注册-->
<mappers>
    <mapper class="com.wen.mapper.UserMapper"/>
</mappers>

本质:使用反射

底层:动态代理

动态代理

11.2、Mybatis执行流程剖析

Mybatis执行流程剖析

首先,在Resource加载mybatis-config.xml配置文件--->进行实例化SqlSessionFactoryBuilder--->

通过调用build方法解析xml配置文件(环境,属性等)----->然后传给configuration对象最后return给

SqlSessionFactory---->然后这里面会有事务创建executor执行mapper对象----->mapper的executor会

执行sql语句--->失败会回滚---->没有失败---->进行查看是否成功---->不成功回滚--->成功提交事务---->关闭

没有关闭一直循环

posted @ 2021-05-09 22:40  W·EN  阅读(59)  评论(0)    收藏  举报