springboot讀取配置信息、環境變量


2、讀取配置文件

2.1 讀取核心配置文件

核心配置文件是指在resources根目錄下的application.properties或application.yml配置文件,讀取這兩個配置文件的方法有兩種,都比較簡單。

核心配置文件application.properties內容如下:

server.port=9090

test.msg=Hello World Springboot!

 

2.1.1使用@Value方式(常用):

 

@RestController

public class WebController {

 

    @Value("${test.msg}")

    private String msg;

 

    @RequestMapping(value = "index", method = RequestMethod.GET)

    public String index() {

        return "The Way 1 : " +msg;

    }

}

 

2.1.2使用Environment方式

@RestController

public class WebController {

 

    @Autowired

    private Environment env;

 

    @RequestMapping(value = "index2", method = RequestMethod.GET)

    public String index2() {

 

        return "The Way 2 : " + env.getProperty("test.msg");

    }

}

 

2.1.3 讓springboot轉換為java類

@Component

@ConfigurationProperties(prefix="people")

public class People {

    private String name;

    private Integer age;

    private List<String> address;

    private Phone phone;

    public String getName() {

        return name;

}

public class Rest {

    

    @Autowired

private People me;

 

    @RequestMapping("/bbb")

    public String hello() {

        return " good " + me.getName() + me.getAge() + me.getAddress() + me.getPhone().getNumber();

    }

}

2.2 讀取自定義配置文件
為了不破壞核心文件的原生態,但又需要有自定義的配置信息存在,一般情況下會選擇自定義配置文件來放這些自定義信息,這里在resources/config目錄下創建配置文件my-web.properties

@ConfigurationProperties(locations = "classpath:config/my-web.properties", prefix = "web")

@Component

public class MyWebConfig {

    private String name;

    private String version;

    private String author;

    public String getAuthor() {

        return author;

    }

 

2.3 讀取環境變量

微服務開發時,一些配置信息(比如數據庫用戶名,密碼)從配置文件中讀取,但在paas中,需要從docker的環境變量中讀取。

server:

  port: 9090

people:

 

#  name: "hhh"

#  name: ${COMPUTERNAME}

  name: ${M2_HOME:abc}  #首先取環境變量,如果環境變量中沒有,就取abc這個固定值

  age: 38

  address:

    - 111

    - 222

  phone:

    number: 13026613740
————————————————
版權聲明:本文為CSDN博主「ggaofeng」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/ggaofengg/article/details/79380055


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM