zoukankan      html  css  js  c++  java
  • springboot~读取自定义配置项

    我们springboot项目有自己默认的配置文件,一般地由application.yml和bootstrap.yml组成,前者是模块的配置,后者是微服务的配置,后台比前者先被框架加载。

    我们有时需要自己定义配置,可能不是简单的字符串,它可能是一个对象,对象里有具体的配置段,它也是application.yml的一部分,你可以把自己的代码添加上,当然你也可以新建全新的文件。

    例如,有一个配置由name和version组成,我们在application.yml里可以把它定义成project元素下面的,这里的project叫前缀,我们在定义配置实体时用来修饰它。

    package test.lind.javaLindDay.utilDemo;
    
    import org.springframework.boot.context.properties.ConfigurationProperties;
    import org.springframework.context.annotation.PropertySource;
    import org.springframework.stereotype.Component;
    
    @Component
    @ConfigurationProperties(prefix = "project")
    @PropertySource(value = "classpath:config.yml")
    public class MyConfig {
      private String version;
      private String name;
    
      public String getVersion() {
        return version;
      }
    
      public void setVersion(String version) {
        this.version = version;
      }
    
      public String getName() {
        return name;
      }
    
      public void setName(String name) {
        this.name = name;
      }
    }

    而其中的注解@component表示可以使用@Autowired注入!如果配置里只是一个字符串的项,我们也可以使用@Value来进行注入,如下代码展现了两种

    注入的方式。

    @RestController
    public class HomeController {
      @Autowired
      MyConfig config;
    
      @Value("${lind.name}")
      String app;
    
      @RequestMapping("/")
      public String Index() {
        return "HOME=" + config.getName() + "app=" + app;
      }
    }

    感谢各位阅读!

  • 相关阅读:
    ASP.NET- 查找Repeater控件中嵌套的控件
    Oracle- 表的管理
    Oracle- PL/SQL DEV工具的使用收集
    Oracle- PL/SQL DEV的远程配置
    Oracle- 提示查询结果不可更新,请使用...更新结果。
    Oracle- 存储过程和异常捕捉
    MSSQLSERVER数据库- SP_EXECUTESQL的使用
    Oracle- 用户管理
    Oracle- 初识
    c语言交换两个变量的值
  • 原文地址:https://www.cnblogs.com/lori/p/8990599.html
Copyright © 2011-2022 走看看