MyBatis的运行原理
来源:互联网 发布:平面设计软件百度云 编辑:程序博客网 时间:2024/06/11 17:00
构建SqlSessionFactory的过程
1.通过解析配置的XML文件,读出配置参数,并将读取的数据存入Configuration类中
2.使用Configuration对象去创建SqlSessionFactory,SqlSessionFactory是一个接口(使用DefaultSqlSessionFactory)
构建Configuration
作用:
1.读入配置文件(包括基础配置的XML文件和映射器的XML文件)
2.初始化基础配置,比如别名,一些重要的类对象
3.提供单例,为后续创建SessionFactory服务并提供配置的参数
4.执行一些重要的对象方法,初始化配置信息
读出的配置信息保存到Configuration类的单例中
映射器的组成
1.MappedStatement:保存映射器的一个节点(select|insert|delete|update),包括许多我们配置的SQL,SQL的id
resultMap,parameterType,resultType等重要配置内容
2.SqlSource:提供BoundSql对象的地方
3.BoundSql:建立SQL和参数的地方,他有3个常用属性(SQL,parameterObject,parameterMappings)
parameterObject为参数本身(如果使用@Param,就相当于把parameterObject变成一个Map<String,Object>对象)
SQL就是映射器中的一条SQL
parameterMappings是一个List,每一个元素都是一个parameterMapping对象,(参数包括属性,名称,表达式,javaType,jdbcType,typeHandler等重要信息)
SqlSession的四大对象
Executor代表执行器,由它来调度StatementHandler,ParameterHandler,ResultHandler
StatementHandler:使用Statement执行操作,它是四大对象的核心,起到承上启下的作用
ParameterHandler用于SQL对参数的处理
ResultHandler是进行最后数据集(resultSet)的封装返回处理的
update:Executor会先调用StatementHandler的prepare()方法预编译SQL,同时设置一些基本运行的参数,
然后调用ParameterHandler的parameterize()方法启用ParameterHandler设置参数,完成预编译,
如需要查询,就用ResultHandler封装结果返回调用者
query:用typeHandler处理结果类型,然后用ObjectFactory提供的规则组装对象,返回给调用者
1.通过解析配置的XML文件,读出配置参数,并将读取的数据存入Configuration类中
2.使用Configuration对象去创建SqlSessionFactory,SqlSessionFactory是一个接口(使用DefaultSqlSessionFactory)
构建Configuration
作用:
1.读入配置文件(包括基础配置的XML文件和映射器的XML文件)
2.初始化基础配置,比如别名,一些重要的类对象
3.提供单例,为后续创建SessionFactory服务并提供配置的参数
4.执行一些重要的对象方法,初始化配置信息
读出的配置信息保存到Configuration类的单例中
映射器的组成
1.MappedStatement:保存映射器的一个节点(select|insert|delete|update),包括许多我们配置的SQL,SQL的id
resultMap,parameterType,resultType等重要配置内容
2.SqlSource:提供BoundSql对象的地方
3.BoundSql:建立SQL和参数的地方,他有3个常用属性(SQL,parameterObject,parameterMappings)
parameterObject为参数本身(如果使用@Param,就相当于把parameterObject变成一个Map<String,Object>对象)
SQL就是映射器中的一条SQL
parameterMappings是一个List,每一个元素都是一个parameterMapping对象,(参数包括属性,名称,表达式,javaType,jdbcType,typeHandler等重要信息)
SqlSession的四大对象
Executor代表执行器,由它来调度StatementHandler,ParameterHandler,ResultHandler
StatementHandler:使用Statement执行操作,它是四大对象的核心,起到承上启下的作用
ParameterHandler用于SQL对参数的处理
ResultHandler是进行最后数据集(resultSet)的封装返回处理的
update:Executor会先调用StatementHandler的prepare()方法预编译SQL,同时设置一些基本运行的参数,
然后调用ParameterHandler的parameterize()方法启用ParameterHandler设置参数,完成预编译,
如需要查询,就用ResultHandler封装结果返回调用者
query:用typeHandler处理结果类型,然后用ObjectFactory提供的规则组装对象,返回给调用者
0 0
- MyBatis的运行原理
- MyBatis的运行原理
- Mybatis框架的运行原理
- Mybatis的基本运行原理
- MyBatis的解析和运行原理
- mybatis的解析和运行原理1
- MyBatis六运行原理
- MyBatis 运行原理
- MyBatis进阶(一)运行原理
- mybatis的解析和运行原理2-SqlSession的运行过程
- mybatis的运行过程
- mybatis原理解析---SqlSession运行过程(上)
- mybatis原理解析---SqlSession运行过程(下)
- MyBatis插件的原理
- mybatis的工作原理
- MyBatis的工作原理
- MyBATIS插件原理第二篇 Mapper运行原理
- Mybatis的简单运行流程
- 笔记2-MySQL设置自动增长
- 1012. 数字分类 (20)
- 算法学习之- 贪心算法
- Windows下C语言的Socket编程例子(TCP和UDP)
- [LeetCode]48. Rotate Image
- MyBatis的运行原理
- 使用ps和kill查找并结束Linux进程
- Hibernate4在开发当中的一些改变
- Android评论图片可移动顺序选择器
- ext grid设置选中行
- 虚拟机配置linux为静态ip-桥接模式
- 50个常用的sql语句
- c++ scalar 标量类型
- RetrofitUtils使用