Spring Boot引用配置文件

简介: Spring Boot程序默认从application.properties或者application.yaml读取配置,如何将配置信息外置,方便配置呢?

pring Boot程序默认从application.properties或者application.yaml读取配置,如何将配置信息外置,方便配置呢?


查询官网,可以得到下面的几种方案:


通过命令行指定


SpringApplication会默认将命令行选项参数转换为配置信息

例如,启动时命令参数指定:


java -jar myproject.jar --server.port =9000


从命令行指定配置项的优先级最高,不过你可以通过setAddCommandLineProperties来禁用


SpringApplication.setAddCommandLineProperties(false).


外置配置文件


Spring程序会按优先级从下面这些路径来加载application.properties配置文件


  • 当前目录下的/config目录
  • 当前目录
  • classpath里的/config目录
  • classpath 跟目录

因此,要外置配置文件就很简单了,在jar所在目录新建config文件夹,然后放入配置文件,或者直接放在配置文件在jar目录


自定义配置文件


如果你不想使用application.properties作为配置文件,怎么办?完全没问题


java -jar myproject.jar --spring.config.location=classpath:/default.properties,classpath:/override.properties


或者


java -jar-Dspring.config.location=D:\config\config.properties springbootrestdemo-0.0.1-SNAPSHOT.jar


当然,还能在代码里指定


@SpringBootApplication@PropertySource(value={"file:config.properties"})
publicclassSpringbootrestdemoApplication {
publicstaticvoidmain(String[] args) {
SpringApplication.run(SpringbootrestdemoApplication.class, args);
    }
}


按Profile不同环境读取不同配置


不同环境的配置设置一个配置文件,例如:


  • dev环境下的配置配置在application-dev.properties中;
  • prod环境下的配置配置在application-prod.properties中。


在application.properties中指定使用哪一个文件


spring.profiles.active = dev

当然,你也可以在运行的时候手动指定:


java -jar myproject.jar --spring.profiles.active = prod


相关文章
|
5月前
|
Java Spring
Spring boot 运行服务jar外配置配置文件方式总结
Spring boot 运行服务jar外配置配置文件方式总结
966 0
|
2月前
|
XML Java 数据格式
Spring从入门到入土(xml配置文件的基础使用方式)
本文详细介绍了Spring框架中XML配置文件的使用方法,包括读取配置文件、创建带参数的构造对象、使用工厂方法和静态方法创建对象、对象生命周期管理以及单例和多例模式的测试。
112 7
Spring从入门到入土(xml配置文件的基础使用方式)
|
2月前
|
Java API Spring
在 Spring 配置文件中配置 Filter 的步骤
【10月更文挑战第21天】在 Spring 配置文件中配置 Filter 是实现请求过滤的重要手段。通过合理的配置,可以灵活地对请求进行处理,满足各种应用需求。还可以根据具体的项目要求和实际情况,进一步深入研究和优化 Filter 的配置,以提高应用的性能和安全性。
|
28天前
|
网络协议 Java
springboot配置hosts文件
springboot配置hosts文件
44 11
|
25天前
|
存储 运维 安全
Spring运维之boot项目多环境(yaml 多文件 proerties)及分组管理与开发控制
通过以上措施,可以保证Spring Boot项目的配置管理在专业水准上,并且易于维护和管理,符合搜索引擎收录标准。
39 2
|
2月前
|
SQL JSON Java
mybatis使用三:springboot整合mybatis,使用PageHelper 进行分页操作,并整合swagger2。使用正规的开发模式:定义统一的数据返回格式和请求模块
这篇文章介绍了如何在Spring Boot项目中整合MyBatis和PageHelper进行分页操作,并且集成Swagger2来生成API文档,同时定义了统一的数据返回格式和请求模块。
65 1
mybatis使用三:springboot整合mybatis,使用PageHelper 进行分页操作,并整合swagger2。使用正规的开发模式:定义统一的数据返回格式和请求模块
|
2月前
|
Java 测试技术 Spring
springboot学习三:Spring Boot 配置文件语法、静态工具类读取配置文件、静态工具类读取配置文件
这篇文章介绍了Spring Boot中配置文件的语法、如何读取配置文件以及如何通过静态工具类读取配置文件。
99 0
springboot学习三:Spring Boot 配置文件语法、静态工具类读取配置文件、静态工具类读取配置文件
|
2月前
|
消息中间件 Java 大数据
大数据-56 Kafka SpringBoot与Kafka 基础简单配置和使用 Java代码 POM文件
大数据-56 Kafka SpringBoot与Kafka 基础简单配置和使用 Java代码 POM文件
73 2
|
2月前
|
缓存 NoSQL Java
Springboot自定义注解+aop实现redis自动清除缓存功能
通过上述步骤,我们不仅实现了一个高度灵活的缓存管理机制,还保证了代码的整洁与可维护性。自定义注解与AOP的结合,让缓存清除逻辑与业务逻辑分离,便于未来的扩展和修改。这种设计模式非常适合需要频繁更新缓存的应用场景,大大提高了开发效率和系统的响应速度。
71 2
|
3月前
|
消息中间件 NoSQL 安全
(转)Spring Boot加载 不同位置的 application.properties配置文件顺序规则
这篇文章介绍了Spring Boot加载配置文件的顺序规则,包括不同位置的application.properties文件的加载优先级,以及如何通过命令行参数或环境变量来指定配置文件的名称和位置。