1. 程式人生 > >SpringBoot入門學習(八) ~~ 熱部署整合DataSource

SpringBoot入門學習(八) ~~ 熱部署整合DataSource

目錄

SpringBoot整合DataSource

  • 一、Spring-boot-starter-parent依賴介紹

SpringBoot依賴格式介紹

  • 二、基成DataSource

【準備工作:】這裡使用Druid的資料來源,在github上搜索“druid”出現:

選擇右邊的 alibaba/druid

拉倒最下面,選在SpringBootstart文件:

點選到這個頁面:

這樣就大概知道druid是如何使用了。

1、引入依賴檔案

<dependency>   <groupId

>com.alibaba</groupId>   <artifactId>druid-spring-boot-starter</artifactId>   <version>1.1.4</version></dependency><dependency>   <groupId>mysql</groupId>   <artifactId>mysql-connector-java</artifactId></dependency><dependency>
   <groupId>org.springframework.boot</groupId>   <artifactId>spring-boot-starter-jdbc</artifactId></dependency>

2、編寫一個簡單控制類

@Controller

  public class DataSourceController {

   @Autowired

   private DataSource dataSource;

   @RequestMapping("/druidDataSource"
)    @ResponseBody    public String dataSourcePage() throws  Exception{       System.out.println(0.123);       System.out.println(dataSource.getConnection());       System.out.println(dataSource);       return "hello druidDataSource";    } }

3、在核心配置類,建立一個Bean,指定它的配置引數

@SpringBootApplication

  public class DataSourceApplication {

  

   @Bean

   @ConfigurationProperties("db")

   public DataSource dataSource(){

      return new DruidDataSource();

   }

  

   public static void main(String[] args) {

      SpringApplication.run(DataSourceApplication.class,args);

   }

}

4、啟動SpringBoot專案,嘗試去訪問druidDataSource

如果說沒有報錯,能夠正常訪問表示ok的。但是這種方式呢!是我們手動建立的方式而不是利用SpringBoot自動建立的方式。

改造為:

       刪除Application中的@Bean

@SpringBootApplication

  public class DataSourceApplication {

  

   public static void main(String[] args) {

      SpringApplication.run(DataSourceApplication.class,args);

   }

}

       直接在配置檔案中配置:

spring.datasource.druid.url=jdbc:mysql://192.168.9.102:3306/paycenter

  spring.datasource.druid.username=root

  spring.datasource.druid.password=123456

  spring.datasource.druid.driver-class-name=com.mysql.jdbc.Driver

  spring.datasource.druid.initial-size=5

//配置初始連線數為5

嘗試去訪問,表示ok

這種方式呢!它是利用SpringBoot自動注入的原因,稍後會詳細分析自動注入原理。因為引入了Druid,它檢查到存在該druiDataSource類,它會檢測我們是否手動建立了該@Bean,如果沒有的話,它就會自動幫我們建立,在建立的時候,它依賴於一些連線引數,這些引數的屬性值是固定的,它會去讀取配置檔案,完成自動配置的效果。