中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SpringBoot項目啟動時讀取配置以及初始化資源的方法

發布時間:2020-06-28 13:46:49 來源:億速云 閱讀:246 作者:清晨 欄目:開發技術

小編給大家分享一下SpringBoot項目啟動時讀取配置以及初始化資源的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討方法吧!

介紹

  在開發過程中,我們有時候會遇到非接口調用而出發程序執行任務的一些場景,比如我們使用quartz定時框架通過配置文件來啟動定時任務時,或者一些初始化資源場景等觸發的任務執行場景。

方法一:注解

方案

  通過使用注解@Configuration和@Bean來初始化資源,配置文件當然還是通過@Value進行注入。

  • @Configuration:用于定義配置類,可替換xml配置文件,被注解的類內部一般是包含了一個或者多個@Bean注解的方法。
  • @Bean:產生一個Bean對象,然后將Bean對象交給Spring管理,被注解的方法是會被AnnotationConfigApplicationContext或者AnnotationConfgWebApplicationContext掃描,用于構建bean定義,從而初始化Spring容器。產生這個對象的方法Spring只會調用一次,之后Spring就會將這個Bean對象放入自己的Ioc容器中。
     

補充@Configuration加載Spring:

  1. @Configuration配置spring并啟動spring容器
  2. @Configuration啟動容器+@Bean注冊Bean
  3. @Configuration啟動容器+@Component注冊Bean
  4. 使用 AnnotationConfigApplicationContext 注冊 AppContext 類的兩種方法
  5. 配置Web應用程序(web.xml中配置AnnotationConfigApplicationContext)
     

示例

package com.example.andya.demo.conf;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @author andya
 * @create 2020-06-24 14:37
 */
@Configuration
public class InitConfigTest {

 @Value("${key}")
 private String key;

 @Bean
 public String testInit(){
  System.out.println("init key: " + key);
  return key;
 }
}

方法二:CommandLineRunner

方案

  實現CommandLineRunner接口,該接口中的Component會在所有Spring的Beans都初始化之后,在SpringApplication的run()之前執行。

  多個類需要有順序的初始化資源時,我們還可以通過類注解@Order(n)進行優先級控制

示例

package com.example.andya.demo.service;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;

/**
 * @author andya
 * @create 2020-06-24 14:47
 */
@Component
public class CommandLineRunnerTest implements CommandLineRunner {

 @Value("${key}")
 private String key;

 @Override
 public void run(String... strings) throws Exception {
  System.out.println("command line runner, init key: " + key);
 }
}

兩個示例的運行結果

SpringBoot項目啟動時讀取配置以及初始化資源的方法

看完了這篇文章,相信你對SpringBoot項目啟動時讀取配置以及初始化資源的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阜康市| 河曲县| 新巴尔虎左旗| 溧水县| 宜丰县| 璧山县| 额敏县| 微博| 炉霍县| 曲阜市| 保定市| 临夏县| 南华县| 砀山县| 堆龙德庆县| 内江市| 德令哈市| 始兴县| 湟源县| 嘉义市| 安福县| 大方县| 谢通门县| 阿拉善左旗| 诸城市| 岳池县| 东兴市| 图片| 宁乡县| 新丰县| 张北县| 八宿县| 大同县| 栖霞市| 金乡县| 绥棱县| 珲春市| 泗洪县| 高雄县| 衡水市| 米脂县|