mybatis创建SqlSession过程




1. new SqlSessionFactoryBuilder.build(is);//is:mybatis-config.xml配置文件读入流中

   1. 创建XmlConfigBuilder对象解析xml文件

   2. 通过XPathParser对象的evalNode()方法,传入"/configration", 表示解析configration标签下的所有内容,返回的是XNode对象,里面封装的就是Node节点

   3. 通过XNode解析, properties, settings, typeAlias, environments, mappers标签,并对其进行默认初始化

      property标签, 会getStringAttribute("url"/"resource")解析出xml中配置的参数,全部设置到Configration variables(HashMap)属性中

      settings : 
		
		"localCacheScope", "SESSION" , 开启一级缓存, 和sqlSession生命周期一致, 单个crud标签, 结束就销毁

		"defaultExecutorType", "SIMPLE" ,普通执行器 ; REUSE 会重用预处理语句(prepared statements); BATCH 执行器将重用语句并执行批量更新 

		"mapUnderscoreToCamelCase" ,false

		"useGeneratedKeys", false
	
   4. XMLMapperBuilder解析mapper标签

	判断子标签 :

		package标签 , getStringAattribute("name")值, 添加到MapperRegistery中, 键就是name属性值(包名),value就是对应类的字节码对象

		else 就是mapper标签, getStringAttribute("resource"), url=chi
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值