您的位置:首页 > 科技 > 能源 > SpringBoot属性配置方式

SpringBoot属性配置方式

2024/11/17 13:41:10 来源:https://blog.csdn.net/qq_74474809/article/details/140951751  浏览:    关键词:SpringBoot属性配置方式

问题:

如果我们需要修改端口号为其他的端口号,那么我们可以在.yml文件中通过server port 直接对端口进行修改。但是如果我们交给运维或者客户的是一个jar包而不是项目的源文件,他们没有办法直接修改这些属性,这时候就需要SpringBoot属性配置相关的知识了。

我们之前学习的是在resource目录下的application.yml文件中写,然而这种配置方式只是属性配置中的一种方式。

如图:配置文件是在项目源码中提供的,把项目打包成jar包是无法直接修改属性的

修改属性配置方法

1.命令行参数方式 

在运行jar包时在后面添加参数  --键=值    修改端口就是添加  --server.port=10010

解释:

添加的这个参数会添加给启动类的main(String [] args)方法 ,使用args数组接收,启动应用的时候又把这个数组传递给run方法,如黑马程序员视频资料中的ppt展示的:

2. 环境变量方式

在用户的环境变量中添加属性,变量的键和值要和SpringBoot的键和值保持一致。SpringBoot的程序会自动读取这些系统的环境变量,从而使用这些变量。

如图:

设置之后,要把命令提示符窗口关掉,再重新打开命令提示符窗口,重新跑一次项目,端口才会改变。(一定要关闭窗口再重新进入!!!不然端口不会改变!!!)

3.外部配置文件方式

如果修改的属性多了,以上两种方法使用起来非常不方便。但是SpringBoot提供一种外部配置文件的方式来配置属性,可以很好的解决这个问题。

在jar包所在目录下提供一个application.yml文件,在这个里面可以批量的配置需要修改的属性。配置好之后,jar包提起来之后,SpringBoot会自动读取这个配置文件的配置。

把项目下的application.yml配置文件复制一份,放到jar包所在目录下

修改属性的时候,使用记事本打开jar包所在目录下的配置文件,可以把里面的配置全部删掉,然后只写自己要修改的属性配置 。

重新运行项目。

配置优先级

如果同时使用这四种方式配置相同的属性,那么谁会生效?这和配置的优先级有关系!优先级最高的生效。

  • 命令行参数
  • 操作系统环境变量
  • Jar包所在目录下的application.yml
  • 项目中resources目录下的application.yml

 优先级从高到低:

  1. 命令行参数
  2. 操作系统环境变量
  3. Jar包所在目录下的application.yml
  4. 项目中resources目录下的application.yml

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com