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;
      }
    }

    感谢各位阅读!

  • 相关阅读:
    通过实验窥探javascript的解析执行顺序
    HTML5实战与剖析之原生拖拽(四可拖动dragable属性和其他成员)
    Google Guava之Optional优雅的使用null
    sharding-jdbc源码学习(一)简介
    重构——改善既有代码的设计
    spring自定义标签
    java自定义注解
    开源项目集合
    Lombok引入简化Java代码
    设计模式之建造者模式
  • 原文地址:https://www.cnblogs.com/lori/p/8990599.html
Copyright © 2011-2022 走看看