| 
    
    条件:不引⼊druid-spring-boot-starter只依赖druid.jar,不指定spring.datasource.type。 
    结果:注入的数据源是tomcat的数据源。 
    解析:依赖的mybatis-spring-boot-starter工程依赖了tomcat的数据源,spring-boot-autoconfigure-starter的DataSourceAutoConfiguration自动注入类会在不指定数据源的情况下,判断路径中是否存在默认的4种数据源(Hikari,Tomcat,Dbcp,Dbcp2)的其一,如果有就注入。  
    条件:不引入druid-spring-boot-starter只依赖druid.jar ,指定spring.datasource.type为DruidDataSource。结果:注入了DruidDataSource数据源,但配置文件中的druid配置不会生效。 解析: 指定了依赖的数据源后,spring自动注入的starter会将指定的数据源注入,yml指定了druid数据源。@ConfigurationProperties注解的DataSourceProperties没处理druid部分的性能参数属性,只处理了数据源部分的属性。 
 【情况三】 
    条件:引⼊ druid-spring-boot-starter 不依赖druid.jar,指定spring.datasource.type为DruidDataSource。结果:注入了DruidDataSource数据源, 配置文件中的druid配置也会生效。 解析:druid-spring-boot-starter自动配置类会在DataSourceAutoConfiguration之前先创建数据源,并且@ConfigurationProperties注入的DataSourceProperties包含了配置文件中druid的属性。 pom.xml依赖: <!-- 情况一、二 测试引入的依赖 -->   <!--<dependency>-->       <!--<groupId>com.alibaba</groupId>-->       <!--<artifactId>druid</artifactId>-->       <!--<version>${druid.version}</version>-->   <!--</dependency>-->   <dependency>       <groupId>com.alibaba</groupId>       <artifactId>druid-spring-boot-starter</artifactId>       <version>1.1.10</version>   </dependency>   <dependency>       <groupId>org.mybatis.spring.boot</groupId>       <artifactId>mybatis-spring-boot-starter</artifactId>       <version>RELEASE</version>   </dependency> 
 (编辑:南平站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |