当前位置: 首页 > 编程笔记 >

Spring Boot打jar包后配置文件的外部优化配置方法

贺劲
2023-03-14
本文向大家介绍Spring Boot打jar包后配置文件的外部优化配置方法,包括了Spring Boot打jar包后配置文件的外部优化配置方法的使用技巧和注意事项,需要的朋友参考一下

在未进行任何处理的情况下,Spring Boot会默认使用项目中的 application.properties 或者 application.yml 来读取项目所需配置。

  我这里只记录几种自己所用到的。

访问命令行属性

  在默认的情况下, SpringApplication 会将任何命令行选项参数(以 - 开头 --server.port=9000)转换为 property 并添加到Spring环境当中。

  例如,启动项目的时候指定端口:

java -jar analysis-speech-tool-0.0.1-SNAPSHOT.jar --server.port=9000

  Spring Boot使用了一个非常特殊的 PropertySource 命令,目的是为了让属性值的重写按照一定的顺序来,而在这个顺序当中,命令行属性总是优先于其他属性源。

  当然,如果不想将命令行属性添加到Spring环境当中,可以使用以下代码来禁用它们。

SpringApplication.setAddCommandLineProperties(false);

应用程序属性文件

  SpringApplication 将从 application.properties 以下位置的文件中加载属性并且将其添加到Spring的环境当中:

  • 当前目录下的 /config 子目录
  • 当前目录
  • classpath中的 /config 目录
  • classpath根目录

  该列表按照优先级的顺序排列(在列表中较高的位置定义的属性将会覆盖在较低位置定义的属性)。

  如果您不喜欢 application.properties 作为配置文件名,则可以通过指定 spring.config.name 环境属性来切换到另一个名称。还可以使用 spring.config.location 环境属性(以逗号分隔的目录位置列表或文件路径)引用显式位置。
  比如:

java -jar myproject.jar --spring.config.name = myproject
java -jar myproject.jar --spring.config.location = classpath:/default.properties,classpath:/override.properties
java -jar -Dspring.config.location=D:\speech\default.properties analysis-speech-tool-0.0.1-SNAPSHOT.jar

总结

以上所述是小编给大家介绍的Spring Boot打jar包后配置文件的外部优化配置方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!

 类似资料:
  • 在springboot应用程序中,我有一个jar,然后是一个子目录config with application。属性,applicationContext。xml和log4j。。。属性文件。 我正在尝试外部化log4j配置。application.properties是这样外部化的。 但是,当springboot运行时,它使用jar文件中的log4j配置文件。通过使用-Dlog4j.debug选

  • 我有一个标准的Spring靴项目。 我有一个/src/main/resources文件夹,其中有几个配置文件。 我怎样才能用Gradle做到这一点呢?

  • 问题内容: 我想做一些我认为并不困难的事情。 我有一个要打包为jar的应用程序,因为我有大约30个依赖项,并且我希望能够部署一个文件。 我有一些配置文件-一个属性文件和一个spring配置文件,以及我的log4 props文件- 我想在jar外部使用。我想我希望,如果我将它们与jar放在同一目录中,它将在运行时找到它们,但事实并非如此。 在开发过程中,我将这些文件放在eclipse项目的类路径的根

  • 我正在开发一个由几个包组成的OSGi程序,我有时在本地windows dev计算机上运行,有时在经典的Linux上运行。目前,几个专用于资源连接的bundle都有自己的配置文件(属性文件),其中包含一些信息,比如访问一些重要文件的路径(在两个环境中都有)。 但是,由于两个执行环境中的路径不同,我必须在编译之前手动更改配置,这取决于我要在哪个环境中运行我的程序。

  • 我有一个启动应用程序,部署到一个外部tomcat服务器,一切工作在我的本地与本地数据库。现在,我必须将代码推广到数据库配置不同的更高环境。我读了很多关于配置文件的etc...,但是当它是一个外部tomcat并且不使用

  • 本文向大家介绍优化MyBatis配置文件中的配置详解,包括了优化MyBatis配置文件中的配置详解的使用技巧和注意事项,需要的朋友参考一下 本文研究的主要是优化MyBatis配置文件中的配置的相关内容,具体介绍如下。 一、连接数据库的配置单独放在一个properties文件中   之前,我们是直接将数据库的连接配置信息写在了MyBatis的conf.xml文件中,如下: 其实我们完全可以将数据库的