SpringBoot自定义banner,配置端口号和项目路径(二)下

简介: SpringBoot自定义banner,配置端口号和项目路径(二)

三. 配置文件的优先级


我们通过 SpringBoot的官方网址创建的SpringBoot项目工程,会在 resources/ 目录下,生成一个 application.properties 的配置文件。


其实,官方推荐和实际开发中,常常使用 application.yml 文件进行配置( 关于yml 文件的用法,下一章节老蝴蝶再重点讲解).


20210410111824176.png


SpringBoot 的配置文件, application.properties / application.yml 除了放置在 resources目录下,也可以放置在其他的目录下。


三.一 SpringBoot的配置文件放置位置和优化级


  • file: ./config/
  • file: ./
  • classpath: ./config/
  • classpath: ./


file: ./config/ 指的是放置在项目根目录下的 config 文件夹里面 (如 application1.properties)


file: ./ 指的是放置在项目根 目录下 里面 (如 application2.properties)


classpath: ./config/ 指的是放置在项目类路径即 resources 目录下的 config 文件夹里面。 (如 application3.properties)


classpath: ./ 指的是放置在项目类路径即 resources 目录下。(如 application4.properties)


(老蝴蝶这儿只是演示一下配置文件的位置层次,这些配置文件并不能真正起作用。)


20210410111837711.png


这四个优化级也是从高到低排列的, file: ./config/ 的优化级最高, classpath: ./ 的优化级最低。


Springboot项目启动时会按照如下顺序由高到低读取配置,高优先级的属性会覆盖低优先级的属性,属性文件之间存在互补配置的特性。


也就是说,当 file: ./config/ 下的配置文件里面的属性与 classpath: ./的配置文件里面的属性相同时,会直接用 file: ./config/ 下的配置。


可以这么想像一下: springBoot 加载时,会将这四个层级下的配置文件都一起加载了,合并成一个配置文件,如果有相同的配置文件部分,保留优先级最高的。


SpringBoot 给我们放置在 resources 目录下的 application.properties ,优化级是最低的,我们可以根据具体的项目业务逻辑,添加优化级最高的配置信息。


三.二 演示配置文件的优化级和互补特性


只保留 application.properties 配置文件,将 resoruces/config/application3.properties 改成 application.properties 文件。


20210410112136656.png


三.二.一 config下的application.properties 配置文件添加配置


server.port=8081


这儿只添加 port 端口号配置,意味着 servlet.context-path 采用的是默认的配置。


三.二.二 application.properties 添加配置


server.port=8027
server.servlet.context-path=/Lin


也添加了 port 端口号配置,是 8027. 添加了 servlet.context-path 路径配置,为 /Lin


三.二.三 重启项目,进行验证


20210410112104690.png


端口号用的是 config/application.properties 下面的 8081.


context path 用的是 application.properties 下面的 /Lin


三.二.四 网络 url 请求验证


8027 端口号走不通。


20210410111859501.png


8081端口通,但是路径走不通。


20210410111913245.png


8081/Lin 端口号,项目路径均可以走通。


20210410111934795.png


本章节的代码放置在 github 上:


https://github.com/yuejianli/springboot/tree/main/MavenHelloWorld


谢谢您的观看,如果喜欢,请关注我,再次感谢 !!!

相关文章
|
5天前
|
XML Java 应用服务中间件
SpringBoot项目打war包流程
本文介绍了将Spring Boot项目改造为WAR包并部署到外部Tomcat服务器的步骤。主要内容包括:1) 修改pom.xml中的打包方式为WAR;2) 排除Spring Boot内置的Tomcat依赖;3) 添加Servlet API依赖;4) 改造启动类以支持WAR部署;5) 打包和部署。通过这些步骤,可以轻松地将Spring Boot应用转换为适合外部Tomcat服务器的WAR包。
97 64
SpringBoot项目打war包流程
|
8天前
基于springboot+thymeleaf+Redis仿知乎网站问答项目源码
基于springboot+thymeleaf+Redis仿知乎网站问答项目源码
59 36
|
10天前
|
Java 测试技术 Spring
Spring Boot随机端口怎么动态扩容?
在Spring Boot中,可以通过`${random.int(2000,8000)}`在配置文件中设置随机端口,确保每次启动时端口不同。此外,还可以通过检测机制确保生成的随机端口未被占用,避免端口冲突。具体实现包括使用`System.setProperty`设置有效随机端口、自定义属性源以及直接设置`server.port=0`让Spring Boot自动选择空闲端口。推荐使用`server.port=0`以简化配置并避免冲突。
|
2月前
|
Java 应用服务中间件
SpringBoot获取项目文件的绝对路径和相对路径
SpringBoot获取项目文件的绝对路径和相对路径
151 1
SpringBoot获取项目文件的绝对路径和相对路径
|
2月前
|
分布式计算 关系型数据库 MySQL
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型 图像处理 光通信 分布式计算 算法语言 信息技术 计算机应用
74 8
|
2月前
|
存储 运维 安全
Spring运维之boot项目多环境(yaml 多文件 proerties)及分组管理与开发控制
通过以上措施,可以保证Spring Boot项目的配置管理在专业水准上,并且易于维护和管理,符合搜索引擎收录标准。
66 2
|
2月前
|
安全 Java 应用服务中间件
如何将Spring Boot应用程序运行到自定义端口
如何将Spring Boot应用程序运行到自定义端口
88 0
|
2月前
|
JavaScript 前端开发 Java
SpringBoot项目的html页面使用axios进行get post请求
SpringBoot项目的html页面使用axios进行get post请求
49 0
|
Java
Java:SpringBoot启动时打印当前端口
Java:SpringBoot启动时打印当前端口
705 0
|
2天前
|
JavaScript Java 测试技术
基于SpringBoot+Vue实现的留守儿童爱心网站设计与实现(计算机毕设项目实战+源码+文档)
博主是一位全网粉丝超过100万的CSDN特邀作者、博客专家,专注于Java、Python、PHP等技术领域。提供SpringBoot、Vue、HTML、Uniapp、PHP、Python、NodeJS、爬虫、数据可视化等技术服务,涵盖免费选题、功能设计、开题报告、论文辅导、答辩PPT等。系统采用SpringBoot后端框架和Vue前端框架,确保高效开发与良好用户体验。所有代码由博主亲自开发,并提供全程录音录屏讲解服务,保障学习效果。欢迎点赞、收藏、关注、评论,获取更多精品案例源码。
29 10