SpringBoot入门学习笔记八(配置文件的位置)

版权声明:本文为 小异常 原创文章,非商用自由转载-保持署名-注明出处,谢谢!
本文网址:https://blog.csdn.net/sun8112133/article/details/103200700







笔记五 中已经简单介绍过了 Spring Boot 配置文件的基本使用,本篇就来讲解一下 配置文件的位置


一、项目内部的配置文件

我们之前讲过,properties配置文件yml配置文件 可以互相补充,也可以结合使用,如果存在冲突的情况,则 properties 优先级比 yml 的优先级高。

我们还知道 Spring Boot 默认能够读取 application.propertiesapplication.yml 文件。

这两个文件在 项目 中只能出现在以下四个地方:

  • file: 项目根目录/config
  • file: 项目根目录
  • classpath: 项目根目录/config
  • classpath: 项目根目录

配置文件的位置

注意: 如果某项配置冲突,则优先级从上往下;如果不冲突,则互补结合使用。我们一般习惯于写在 classpath:项目根目录 中,也就是 resource 目录下。



二、配置项目名

在配置文件中进行 指定项目名 。如下:

  • properties文件 中配置
server.servlet.context-path=/boot       # 项目名为 boot
  • yml文件 中配置
server:
	servlet:
		context-path: /boot    # 项目名为 boot


三、项目外部的配置文件

这个方法是用于 补救项目。如果项目中有大量配置需要立即修改,而配置文件和配置信息过多不易找寻,就用这种方法。

好处: 如果项目中出现问题,比如端口号错误,那么你只需要在外部写一个配置文件,然后在运行时直接引用外部配置文件即可,不需要再重新修改源代码,然后再打成 Jar 包了。

我们需要将配置文件放置在项目外,在运行项目时指定配置文件路径即可。

1、使用 IDE 工具(如:STS)

我们只需要 右键选择 Run As -> Run Configuration -> Arguments -> Program arguments

输入命令: --spring.config.location=D:/application.properties 即可。

注意: 如果 同一个配置信息 同时存在于 内部配置文件 和 外部配置文件,则优先级:外部 > 内部

2、使用 CMD 命令行窗口

使用 CMD 命令行窗口的方式,命令如下:

java -jar HelloWorld-0.0.1-SNAPSHOT.jar --spring.config.location=D:/application.properties



四、项目运行参数

这个方法也是用于 补救项目。如果项目中只有少量配置信息需要修改,可以用此方法。

比如只修改端口号和项目名:

我们只需要 右键选择 Run As -> Run Configuration -> Arguments -> Program arguments

输入命令: --server.port=8888 -server.servlet.context-path=/springboot 即可,这个时候项目的端口号就改成了 8888,项目名就改成了 springboot 了。



五、优先级

我们在多个地方都进行配置时,如果产生了冲突,那么优先级是这样的:

命令参数 > 外部文件 > 内部文件(properties>yml)



博客中若有不恰当的地方,请您一定要告诉我。前路崎岖,望我们可以互相帮助,并肩前行!



发布了166 篇原创文章 · 获赞 169 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/sun8112133/article/details/103200700