zoukankan      html  css  js  c++  java
  • Spring ApplicationListener配合-D实现参数初始化

    ApplicationListener是SpringBoot的监听器,提供了四种事件:
    • ApplicationStartedEvent :spring boot启动开始时执行的事件
    • ApplicationEnvironmentPreparedEvent:spring boot 对应Enviroment已经准备完毕,但此时上下文context还没有创建。
    • ApplicationPreparedEvent:spring boot上下文context创建完成,但此时spring中的bean是没有完全加载完成的。
    • ApplicationFailedEvent:spring boot启动异常时执行事件

    因此,我们可以实现该接口,在系统启动的时刻初始化我们自定义的参数。
     
    案例场景:
    项目中配置文件一般是外化的,spring boot使用yml文件,项目打包时不希望把yml文件打入jar包,而是在项目中指定yml所有目录
    该目录地址和yml文件的名字,在系统启动时,通过java -jar 项目jar包 -DXXXX 指定这些参数 (动态入参)
    如果不指定,则使用默认路径和文件名
     
    **********************************
    java -Dkey=value  :在虚拟机的系统属性中设置属性名/值对,运行在此虚拟机上的应用程序可用
    System.getProperty("key")
    得到value的值
     
     
    参考:
  • 相关阅读:
    fedora 24 使用扇贝网页版没有声音
    Fedora 23安装 NS2 (network simulator 2)
    如何扩大LVM 逻辑分区的大小?
    code::blocks编译出错
    Fedora 23 忘记root密码
    u盘安装Fedora23
    Derived 派生类
    移动点的坐标
    进栈 出栈
    C和C++语言&
  • 原文地址:https://www.cnblogs.com/huahua035/p/9512945.html
Copyright © 2011-2022 走看看