springboot中非容器类如何获取配置文件数据

 更新时间:2024年01月26日 15:06:05   作者:185的阿平  
这篇文章主要介绍了springboot中非容器类如何获取配置文件数据问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

springboot非容器类获取配置文件数据

如果是被spring容器所管理,一般采用@Value注解就可以读取到application.yml文件的内容。

但是不被spring容器管理,使用@Value是无效的。注入时会是NULL。

但就是会有这样的场景,此时可采用在springboot启动类中将环境注入到某一个公共配置类,该类所有属性为公共静态属性攻外部类直接使用。

@SpringBootApplication
public class DemoStarterTestApplication {
    public static void main(String[] args) {
        ConfigurableApplicationContext run = SpringApplication.run(DemoStarterTestApplication.class, args);
        ConfigurableEnvironment environment = run.getEnvironment();
        String address = environment.getProperty("server.address1");
        int age = Integer.parseInt(environment.getProperty("spring.user.age"));
        EnvConfig envConfig = new EnvConfig();
        envConfig.setAddress(address);
        envConfig.setAge(age);
 
        System.out.println("地址为"+EnvConfig.address+",年龄为"+EnvConfig.age);
    }
 
}

公共配置类

public class EnvConfig {
    public static String address;
 
    public static int age;
 
    public  void setAddress(String address) {
        EnvConfig.address = address;
    }
 
    public  void setAge(int age) {
        EnvConfig.age = age;
    }
    
}

配置文件

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Maven多模块之父子关系的创建

    Maven多模块之父子关系的创建

    这篇文章主要介绍了Maven多模块之父子关系的创建,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • 浅谈Java到底是值传递还是引用传递呢

    浅谈Java到底是值传递还是引用传递呢

    今天带大家学习Java的相关知识,文章围绕着Java到底是值传递还是引用传递展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • Mybatis的TypeHandler实现数据加解密详解

    Mybatis的TypeHandler实现数据加解密详解

    这篇文章主要介绍了Mybatis基于TypeHandler实现敏感数据加密详解,Typehandler是mybatis提供的一个接口,通过实现这个接口,可以实现jdbc类型数据和java类型数据的转换,需要的朋友可以参考下
    2024-01-01
  • Java基础之容器LinkedList

    Java基础之容器LinkedList

    这篇文章主要介绍了Java基础之容器LinkedList,文中有非常详细的代码示例,对正在学习java基础的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • MyBatis处理CLOB/BLOB类型数据以及解决读取问题

    MyBatis处理CLOB/BLOB类型数据以及解决读取问题

    这篇文章主要介绍了MyBatis处理CLOB/BLOB类型数据以及解决读取问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • 从零开始学SpringBoot如何开始使用图文详解

    从零开始学SpringBoot如何开始使用图文详解

    这篇文章主要介绍了从零开始学SpringBoot如何开始使用,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Springboot如何利用拦截器拦截请求信息收集到日志详解

    Springboot如何利用拦截器拦截请求信息收集到日志详解

    一些系统经常需要关注用户请求的具体信息,如用户信息、请求参数、响应结果等等,在SpringBoot应用中可通过拦截器的方式统一处理,下面这篇文章主要给大家介绍了关于Springboot如何利用拦截器拦截请求信息收集到日志的相关资料,需要的朋友可以参考下
    2021-08-08
  • 高分面试分析jvm如何实现多态

    高分面试分析jvm如何实现多态

    这篇文章主要介绍了讲解了在面试中jvm如何实现多态,怎样回答才能得到高分的问题分析,有需要的朋友可以借鉴参考下,祝大家早日升职加薪多多进步
    2022-01-01
  • Java Volatile关键字实现原理过程解析

    Java Volatile关键字实现原理过程解析

    这篇文章主要介绍了Java Volatile关键字实现原理过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • OpenCV在Android上的应用示例

    OpenCV在Android上的应用示例

    这篇文章主要介绍了OpenCV在Android上的应用示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04

最新评论