java源码学习-Mybatis(2)与数据库建立连接

Mybatis与数据库建立连接

  • jdbc执行流程图
  • Mybatis初始化
  • Hikari连接池的启动
  • Mybatis获取数据库连接
  • 后记

前文:Mybatis加载mapper流程

由于mybatis是在jdbc的基础上进行封装的, 所以jdbc执行流程 获取连接->创建statements->resultSet这些步骤mybatis都是存在的, 本篇学习一下Mybatis获取Connection的步骤

jdbc执行流程图

java源码学习-Mybatis(2)与数据库建立连接_第1张图片

Mybatis初始化

由于我这里是在springboot中整合使用的mybatis并且在springboot启动类中加了@MapperScan, 所以Mybatis的配置是springboot通过yml并且自动配置的,
java源码学习-Mybatis(2)与数据库建立连接_第2张图片
我们可以看到在MybatisAutoConfiguration这个类中, 伴随着springboot的启动, 这个类中第一个执行的方法就是sqlSessionFactory, 顾名思义, 这个方法是创建一个工厂类来管理sql会话, 源码如下

@Bean
  @ConditionalOnMissingBean
  public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
   
    SqlSessionFactoryBean factory = new SqlSessionFactoryBean();
    // 这里就是我们这次的重点, 配置DataSource
    factory.setDataSource(dataSource);
    /**
    * 这里我们省略其他的配置
    */
    return factory.getObject

你可能感兴趣的:(源码学习,java基础,mybatis,java,jdbc)