springboot读取配置信息、环境变量

2、读取配置文件

2.1 读取核心配置文件

核心配置文件是指在resources根目录下的application.propertiesapplication.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

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值