学习成长

提供在线文档,方便大家学习


SpringBoot----resource资源配置文件

<h2>1.简介:</h2> <pre><code>在Spring Boot中,resource目录中的资源配置文件一般有两种不同的格式,一个是.properties,另一个是.yaml。.properties文件比较常见,相对于.properties而言,.yaml更加简洁明了,而且使用的场景也更多,很多的开源项目都是使用.yaml进行配置。除了简洁,.yaml还有另外一个特点,就是.yaml中的数据是有序的,.properties中的数据是无序的。在一些需要路径匹配的的配置中,顺序就显得尤为重要,此时我们一般采用.yaml。总之根据自己项目实际情况,选择属于自己的项目的资源配置文件类型才是最优的,我们的项目采用.properties。</code></pre> <h2>2.配置文件的默认位置</h2> <pre><code>首先,当我们创建一个Spring Boot工程时,默认resources目录下就有一个appliction.properties文件,可以在appliction.properties文件中进行项目配置,但是这个文件并非唯一的文件,在Spring Boot中,一共有4个地方可以存放application.properties文件,我们的工程中采用如下第四种,将资源配置文件直接存放在resources目录下。 1.当前项目根目录下的config目录下 2.当前项目的根目录下 3.resources目录下的config目录下 4.resources目录下 以user-svr为例,如下图:</code></pre> <p><img src="https://www.showdoc.cc/server/api/attachment/visitfile/sign/e0d13b67f7d6ad6c6d26c2f37ae8b43a?showdoc=.jpg" alt="" /></p> <h2>3.配置文件的区别</h2> <pre><code>通过上面的图片可发现我们项目中采用的是bootstrap命名方式,而不是默认类型appliction,那么二者的区别是: 加载顺序:bootstrap &gt; application 应用场景: 1.两者都可以用来配置参数; 2.bootstrap.yml 可以理解成系统级别的一些参数配置,这些参数一般是不会变动的 ,例: 1)、使用 Spring Cloud Config 配置中心时,这时需要在 bootstrap 配置文件中添加连接到配置中心的配置属性来加载外部配置中心的配置信息; 2)、一些固定的不能被覆盖的属性 3)、一些加密/解密的场景; 3.application 配置文件这个容易理解,aplication.yml 可以用来定义应用级别的,主要用于 Spring Boot 项目的自动化配置</code></pre> <h2>4.不同环境的配置dev,uat,prod</h2> <pre><code>新建三个.properties文件,分别为bootstrap-dev.properties,bootstrap-uat.properties,bootstrap-prod.properties三个文件大同小异,dev为开发环境,uat为测试环境,prod为生产环境。bootstrap.properties文件根据不同环境改变spring.profiles.active=dev,选择要执行的的环境 项目启动时可以添加java -jar web.jar spring.profiles.active=uat 来启动不同环境配置</code></pre> <h2>5.采用外部配置资源文件部署</h2> <pre><code>当采用外部配置文件进行启动部署时,可以使用 java -jar xxx.jar --Dspring.config.location=classpath:/application.properties 来启动 注:配置文件的加载顺序是先内部后外部,当想使用外部配置文件件时需要将内部配置屏蔽,否则依然加载内部配置文件 详细操作,参见测试环境Docker容器化部署方式</code></pre>

页面列表

ITEM_HTML