Spring Boot 2 数据库场景的自动配置分析与整合测试

来自姬鸿昌的知识库
跳到导航 跳到搜索

https://www.bilibili.com/video/BV19K4y1L7MT?p=60

数据源的自动配置

导入JDBC场景

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
Spring-boot-starter-data-jdbc依赖包含 1.png

为什么没有数据库驱动?

为什么导入 JDBC 场景,官方不导入驱动?官方不知道我们接下来要操作什么数据库。

<mysql.version>8.0.22</mysql.version>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

如果想要修改版本 直接依赖引入具体版本(Maven 的就近原则)

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.49</version>
        </dependency>

或者重新声明版本(Maven 的属性的就近优先原则)

    <properties>
        <mysql.version>5.1.49</mysql.version>
    </properties>



分析自动配置

生成缩略图出错:无法将缩略图保存到目标地点
生成缩略图出错:无法将缩略图保存到目标地点

自动配置的类

  • DataSourceAutoConfiguration:数据源的自动配置
  • DataSourceTransactionManagerAutoConfiguration:事务管理器的自动配置