zoukankan      html  css  js  c++  java
  • Spring Boot 属性配置

    Spring Boot 属性配置的方式有以下几种,优先级分别从高到底排列

    1、Devtool全局配置

    2、测试环境@TestPropertySouce注解

    3、测试环境properties属性

    4、命令行参数

    5、SPRING_APPLICATION_JSON属性

    6、ServletConfig初始化参数

    7、ServletContext初始化参数

    8、JNDI属性

    9、JAVA系统属性

    10、操作系统环境变量

    11、RandomValuePropertySource随机值属性

    12、jar包外的application-{profile}.properties

    13、jar包内的application-{profile}.properties

    14、jar包外的application.properties

    15、jar包内的application.properties

    16、@PropertySource绑定配置

    17、默认属性

     下面分别从低优先级开始

    17、默认属性

    1)增加属性weburl的值为www.baidu.com

    @SpringBootApplication
    @MapperScan("com.example.demo.mapper")
    public class Sb2Application {
    
    	public static void main(String[] args) {
    		SpringApplication springApplication = new SpringApplication(Sb2Application.class);
    		Properties properties = new Properties();
    		properties.setProperty("weburl","www.baidu.com");
    		springApplication.setDefaultProperties(properties);
    		springApplication.run(args);
    	}
    
    }
    

      

    2)然后通过一个启动类加载器打印属性weburl

    @Component
    public class ResultCommandLineRunner implements CommandLineRunner, EnvironmentAware {
    
        private Environment env;
    
        @Override
        public void run(String... args) throws Exception {
            System.out.println(env.getProperty("weburl"));
        }
    
    
    
        @Override
        public void setEnvironment(Environment environment) {
            this.env = environment;
        }
    }
    

      

    3)输出结果

      .   ____          _            __ _ _
     /\ / ___'_ __ _ _(_)_ __  __ _    
    ( ( )\___ | '_ | '_| | '_ / _` |    
     \/  ___)| |_)| | | | | || (_| |  ) ) ) )
      '  |____| .__|_| |_|_| |_\__, | / / / /
     =========|_|==============|___/=/_/_/_/
     :: Spring Boot ::        (v2.1.6.RELEASE)
    
    ...
    
    www.baidu.com
    

      

    16、@PropertySource绑定配置

    1)在前面的基础上,在resources文件夹下增加demo.properties文件

    2) 然后使用PropertySource绑定配置

    3) 运行程序

    14、jar包外的application.properties

    创建application.yml

     输出结果

    然后在application.properties增加配置

    输出结果为

     说明application.properties的优先级高于application.yml

    13、jar包内的application-{profile}.properties

    增加application-default.yml

     输出结果

    增加application-default.properties

     输出结果

    11、RandomValuePropertySource随机值属性

    1)在application-default.properties中增加一个属性,值为随机数

    2)在启动类加载器中输出这个属性

     3) 运行结果

    10、操作系统环境变量

    设置环境变量

     输出结果

    9、JAVA系统属性

    增加获取虚拟机名字

    在启动类加载器中输出这个属性

     输出结果

    6、ServletConfig初始化参数  7、ServletContext初始化参数

    6、7两种主要是通过server.xxx设置一些属性

    5、SPRING_APPLICATION_JSON属性

    增加参数--SPRING_APPLICATION_JSON={"weburl":"hello,SPRING_APPLICATION_JSON"}

    输出结果:

    4、命令行参数

    增加参数

    输出结果

     

    2、测试环境@TestPropertySouce注解  3、测试环境properties属性

    这两个测试用的比较多

  • 相关阅读:
    sql批量插入数据测试
    服务器远程桌面连接显示内存不足无法完成解决
    SQL Server 2008 R2占用内存越来越大两种解决方法
    .net core 用引用log4net 写入日志
    用vscode开发,建议安装的插件大全
    关于如何添加windows的性能计数器
    VScode创建Vue项目,报错:vue : 无法加载文件 C:UsersxxxAppDataRoaming pmvue.ps1
    EFCore-脚手架Scaffold发生Build Failed问题的终极解决
    springboot 事务回滚
    JDK11.0.7下载及安装详细教程(win10)
  • 原文地址:https://www.cnblogs.com/linlf03/p/12372627.html
Copyright © 2011-2022 走看看