MyBatis是支持定制化SQL、存储过程以及高级映射的优秀的持久层框架,其主要就完成2件事情:
1、封装JDBC操作
2、利用反射打通Java类与SQL语句之间的相互转换
执行原理
1、通过SqlSessionFactoryBuilder的build()方法读取mybatis的核心配置文件得到SqlSessionFactory会话工厂
2、通过SqlSessionFactory会话工厂去open一个SqlSession
3、当通过SqlSession执行增删改查操作的时候,mybatis底层会调用Executor执行器操作数据库,Executor接口有两个实现,一个是基本执行器、一个是缓存执行器
4、Executor通过MappedStatement在执行sql前将输入的java对象映射至sql中。
5、MappedStatement对sql执行输出结果进行定义,Executor通过MappedStatement在执行sql后将输出结果映射至java对象中
1、封装JDBC操作
2、利用反射打通Java类与SQL语句之间的相互转换
执行原理
1、通过SqlSessionFactoryBuilder的build()方法读取mybatis的核心配置文件得到SqlSessionFactory会话工厂
2、通过SqlSessionFactory会话工厂去open一个SqlSession
3、当通过SqlSession执行增删改查操作的时候,mybatis底层会调用Executor执行器操作数据库,Executor接口有两个实现,一个是基本执行器、一个是缓存执行器
4、Executor通过MappedStatement在执行sql前将输入的java对象映射至sql中。
5、MappedStatement对sql执行输出结果进行定义,Executor通过MappedStatement在执行sql后将输出结果映射至java对象中