zoukankan      html  css  js  c++  java
  • SpringBoot在Configuration注解中使用@Value获取null的问题

    
    
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.context.annotation.Configuration;
    
    @Configuration
    public class MyConfigure {
        @Value( "${spring.application.name}")
        private  String name ;
    
        @Value( "${spring.datasource.driver-class-name}")
        protected String driverClassName ;
        
        public MyConfigure(){
            // 这里 name 和 driverClassName 都是null
        }
    }

    修改 MyConfigure 实现 EnvironmentAware 接口

    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.context.EnvironmentAware;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.core.env.Environment;
    
    @Configuration
    public class MyConfigure implements EnvironmentAware {
        @Value( "${spring.application.name}")
        private  String name ;
    
        @Value( "${spring.datasource.driver-class-name}")
        protected String driverClassName ;
        
        private Environment env;
    
        @Override
        public void setEnvironment(Environment environment) {
            this.env = environment; 
            this.doSomething();
        }
    
        public MyConfigure(){
            // 这里 name 和 driverClassName 都是null
        }
        
        private void doSomething(){
            // 这里 获取 name 和 driverClassName  
            this.driverClassName = this.env.getProperty("spring.datasource.driver-class-name");
        }
    }

    解决获取不到配置的问题




  • 相关阅读:
    ML-线性回归
    ML-决策树
    numpy常用知识点备忘(2)
    numpy常用知识点备忘
    ML-朴素贝叶斯算法
    Git常用命令备忘
    机器学习-决策树算法
    机器学习-线性模型(线性回归与逻辑回归)
    深入JVM内核(四)垃圾回收器与GC参数
    深入JVM内核(三)对象存活判定算法与垃圾收集算法
  • 原文地址:https://www.cnblogs.com/Leechg/p/12331985.html
Copyright © 2011-2022 走看看