zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    推荐2个Mac OS X上的JSON工具
    20个ios登陆界面
    IOS 真机调试和发布相关证书
    IOS学习路径
    Shell 语法和tips -- 持续更新
    Shell if 参数含义列表
    SimpleCursorAdapter 原理和实例
    Android Service VS AsyncTask VS Thread
    转:Intent 操作常用URI代码示例
    转:Android preference首选项框架
  • 原文地址:https://www.cnblogs.com/moxiaotao/p/11577005.html
Copyright © 2011-2022 走看看