亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

spring boot啟動加載外部配置文件

_Suqin / 3027人閱讀

摘要:業(yè)務(wù)需求加載外部配置文件,部署時更改比較方便。先上代碼使用變量的工具類也可以通過使用這中加載方法優(yōu)先級很高,如果與配置文件同名,將覆蓋文件中的配置。更新工具類可能晚于某些初始化的類加載。

業(yè)務(wù)需求:加載外部配置文件,部署時更改比較方便。

先上代碼:

@SpringBootApplication
public class Application {

    public static void main(String[] args) throws Exception {
        SpringApplicationBuilder springApplicationBuilder = new SpringApplicationBuilder(Application.class);
        springApplicationBuilder.web(true);
        Properties properties = getProperties();
        StandardEnvironment environment = new StandardEnvironment();
        environment.getPropertySources().addLast(new PropertiesPropertySource("micro-service", properties));
        springApplicationBuilder.environment(environment);
        springApplicationBuilder.run(args);
    }

    private static Properties getProperties() throws IOException {
        PropertiesFactoryBean propertiesFactoryBean = new PropertiesFactoryBean();
        ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
        propertiesFactoryBean.setIgnoreResourceNotFound(true);
        Resource fileSystemResource = resolver.getResource("file:/opt/company/test.properties");
        propertiesFactoryBean.setLocations(fileSystemResource);
        propertiesFactoryBean.afterPropertiesSet();
        return propertiesFactoryBean.getObject();
    }
}

使用變量的工具類

@Component
public class EnvironmentUtil {

    private static Environment environment;

    @Autowired
    public void setEnvironment(Environment environment) {
        EnvironmentUtil.environment = environment;
    }

    public static  T getProperty(String key, Class targetType, T defaultValue) {
        return environment.getProperty(key, targetType, defaultValue);
    }

    public static  T getProperty(String key, Class targetType) {
        return environment.getProperty(key, targetType);
    }

    public static String getProperty(String key) {
        return environment.getProperty(key);
    }

    public static String getProperty(String key, String defaultValue) {
        return environment.getProperty(key, defaultValue);
    }

    public static Integer getInteger(String key, Integer defaultValue) {
        return environment.getProperty(key, Integer.class, defaultValue);
    }
}

也可以通過@Value("${key}")使用

這中加載方法優(yōu)先級很高,如果與spring boot配置文件同名,將覆蓋application.properties文件中的配置。

更新:
工具類可能晚于某些初始化的類加載。請?zhí)砑?b>@DependsOn("environmentUtil")

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/70933.html

相關(guān)文章

  • Spring-Boot學(xué)習(xí)筆記

    摘要:學(xué)習(xí)筆記使用很容易創(chuàng)建一個獨(dú)立運(yùn)行運(yùn)行內(nèi)嵌容器準(zhǔn)生產(chǎn)級別的基于框架的項目,使用你可以不用或者只需要很少的配置。異常消息如果這個錯誤是由異常引起的。錯誤發(fā)生時請求的路徑。 Spring-Boot 1.5 學(xué)習(xí)筆記 使用Spring Boot很容易創(chuàng)建一個獨(dú)立運(yùn)行(運(yùn)行jar,內(nèi)嵌Servlet容器)、準(zhǔn)生產(chǎn)級別的基于Spring框架的項目,使用Spring Boot你可以不用或者只需要很...

    curlyCheng 評論0 收藏0
  • 一文掌握 Spring Boot Profiles

    摘要:需要注意的是必須要使用版本為以上才支持屬性。與格式文件不同,正對不同的,無法在一個文件設(shè)置,官方采用命名形式為格式來達(dá)成一樣的效果。采用方式添加的是屬于額外激活的,也就是說覆蓋掉外部傳入的指定的。 showImg(https://segmentfault.com/img/remote/1460000019924197?w=1050&h=500); Spring Boot Profile...

    Eidesen 評論0 收藏0
  • Spring Boot 配置文件中的花樣,看這一篇足矣!

    摘要:的默認(rèn)配置文件位置為。比如,我們需要自定義模塊的服務(wù)端口號,可以在中添加來指定服務(wù)端口為,也可以通過來指定應(yīng)用名該名字在應(yīng)用中會被注冊為服務(wù)名。同時,配置內(nèi)容都對開發(fā)人員可見,本身這也是一種安全隱患。 在快速入門一節(jié)中,我們輕松的實(shí)現(xiàn)了一個簡單的RESTful API應(yīng)用,體驗(yàn)了一下Spring Boot給我們帶來的諸多優(yōu)點(diǎn),我們用非常少的代碼量就成功的實(shí)現(xiàn)了一個Web應(yīng)用,這是傳統(tǒng)的...

    pingan8787 評論0 收藏0
  • 最渣的 Spring Boot 文章

    摘要:如刪除臨時文件,清除緩存信息,讀取配置文件信息,數(shù)據(jù)庫連接等。提供的接口也可以滿足該業(yè)務(wù)場景。不同點(diǎn)中方法的參數(shù)為,而接口中方法的參數(shù)為數(shù)組。 spring-boot-starter-parent Maven的用戶可以通過繼承spring-boot-starter-parent項目來獲得一些合理的默認(rèn)配置。這個parent提供了以下特性: 默認(rèn)使用Java 8 使用UTF-8編碼 一...

    yanest 評論0 收藏0
  • 吐血整理 20 道 Spring Boot 面試題,我經(jīng)常拿來面試別人!

    摘要:你如何理解中的可以理解為啟動器,它包含了一系列可以集成到應(yīng)用里面的依賴包,你可以一站式集成及其他技術(shù),而不需要到處找示例代碼和依賴包。如你想使用訪問數(shù)據(jù)庫,只要加入啟動器依賴就能使用了。 面試了一些人,簡歷上都說自己熟悉 Spring Boot, 或者說正在學(xué)習(xí) Spring Boot,一問他們時,都只停留在簡單的使用階段,很多東西都不清楚,也讓我對面試者大失所望。 下面,我給大家總結(jié)...

    haoguo 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<