Spring-boot+mybatis中配置config的代码跟踪

1.首先我们要知道,mybatis是如何获取数据库配置的。
通过mybtis的入门教程我们知道可以通过sqlSessionFactoryBuilder构建一个SqlSessionFactory。
通过

2.我们再来看看 Spring-Boot中是如何给出SqlSession的。
在这里插入图片描述
在这里插入图片描述
在spring-boot中的autoconfigure中MybatisAutoConfiguration类里。
SqlSessionFactoryBean factory = new SqlSessionFactoryBean();
最后调用的是 return factory.getObject();
点进去getObject在这里插入图片描述
afterPropertiesSet();
在这里插入图片描述

buildSqlSessionFactory

protected SqlSessionFactory buildSqlSessionFactory() throws IOException {
   

    Configuration configuration;

    XMLConfigBuilder xmlConfigBuilder = null;
    if (this.configuration != null) {
   
      configuration = this.configuration;
      if (configuration.getVariables() == null) {
   
        configuration.setVariables(this.configurationProperties);
      } else if (this.configurationProperties != null) {
   
        configuration.getVariables().putAll(this.configurationProperties);
      }
    } else if (this.configLocation != null) {
   
      xmlConfigBuilder = new XMLConfigBuilder(this.configLocation.getInputStream(), null, this.configurationProperties);
      configuration = xmlConfigBuilder.getConfiguration();
    } else {
   
      if (LOGGER.isDebugEnabled()) {
   
        LOGGER.debug("Property `configuration` or 'configLocation' not specified, using default MyBatis Configuration");
      }
      configuration = new Configuration();
      configuration.setVariables(this.configurationProperties);
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值