您的位置:首页 > 数据库

Mybatis SqlSessionFactory创建过程

2017-02-23 21:04 701 查看


1.客户端调用SqlSesisonFactoryBuilder.build,传入对象为SqlMapConfig文件流

2.根据sqlMapCconfig文件流-->  创建XMLConfigBuilder对象

3.直接创建XMLMapperEntityResolver,该对象是SqlMapConfig文件的DTD本地实例    作用:将远程DTD文件转化为本地文件

4.根据sqlMapConfig文件流,确定校验,XMLMapperEntityResolver实例对象 -->创建XPathParser . XPathParser作用:根据Xpath表达式获取基本的DOM节点Node信息的操作

6.根据传入的SqlMapConfig配置文件流--> 创建Document实例 

7.返回XMLConfigBuilder实例.实例变量中有一个属性parsed,parserd=false. 代表并没有进行解析

8.调用XMLConfigBuilder实例实例的parse方法

9.在parse方法中,调用该实例属性的XPathParser,让它去处理SqlMapConfig配置文件的的<configuration>节点对应的Node对象,然后依次解析此Node节点的子Node:properties, settings, typeAliases,typeHandlers,objectFactory, objectWrapperFactory, plugins, environments,databaseIdProvider, mappers

10.将XML配置文件内的信息解析成Java对象Configuration

11.将上一步创建的Cofiguration对象作为参数,来创建DefaultSqlSessionFactory对象

12.返回一个DefaultSqlSessionFactory对象
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Mybatis