【问题标题】:Read complex values from properties.yml file in spring boot application从 Spring Boot 应用程序中的 properties.yml 文件中读取复杂值
【发布时间】:2020-07-30 17:19:06
【问题描述】:
spring:
  profiles:
    active: dev
  data:
    mongodb:
      uri: mongodb://127.0.1:27017/FeteBird-Product
  kafka:
    bootstrapAddress: localhost:9092
    producer:
      key-serializer: org.springframework.kafka.support.serializer.JsonSerializer
      value-serializer: org.springframework.kafka.support.serializer.JsonSerializer
    consumer:
      key-deserializer: org.springframework.kafka.support.serializer.JsonDeserializer
      value-deserializer: org.springframework.kafka.support.serializer.JsonDeserializer
      auto-offset-reset: earliest
      properties:
        spring:
          json:
            trusted:
              packages: '*'

如何读取spring boot中的所有值,我知道我可以通过如下配置读取

@Configuration
@EnableConfigurationProperties
@ConfigurationProperties("demo")
public class Config {}

我不知道如何在其他类中创建属性和访问。

【问题讨论】:

    标签: java spring spring-boot


    【解决方案1】:
    @Configuration
    @EnableConfigurationProperties
    @ConfigurationProperties(prefix = "spring")
    public class ApplicationYmlConfiguration {
        private KafkaConfigurationYml kafka;
    
        public KafkaConfigurationYml getKafka() {
            return kafka;
        }
    
        public void setKafka(KafkaConfigurationYml kafka) {
            this.kafka = kafka;
        }
    }
    
    
    public class KafkaConfigurationYml {
        private String bootstrapAddress;
    
        public String getBootstrapAddress() {
            return bootstrapAddress;
        }
    
        public void setBootstrapAddress(String bootstrapAddress) {
            this.bootstrapAddress = bootstrapAddress;
        }
    }
    

    随时随地阅读

    @Configuration
    public class KafkaConfiguration {
        private ApplicationYmlConfiguration bootstrapAddress;
    
        public KafkaConfiguration(ApplicationYmlConfiguration bootstrapAddress) {
            this.bootstrapAddress = bootstrapAddress;
        }}
    

    【讨论】:

      猜你喜欢
      • 2017-07-03
      • 2018-05-11
      • 1970-01-01
      • 1970-01-01
      • 2020-01-22
      • 2018-07-16
      • 2017-06-17
      • 2021-03-22
      • 1970-01-01
      相关资源
      最近更新 更多