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


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

相关文章
|
1月前
|
JavaScript Java Maven
【SpringBoot(二)】带你认识Yaml配置文件类型、SpringMVC的资源访问路径 和 静态资源配置的原理!
SpringBoot专栏第二章,从本章开始正式进入SpringBoot的WEB阶段开发,本章先带你认识yaml配置文件和资源的路径配置原理,以方便在后面的文章中打下基础
234 3
|
4月前
|
JSON 分布式计算 大数据
springboot项目集成大数据第三方dolphinscheduler调度器
springboot项目集成大数据第三方dolphinscheduler调度器
243 3
|
4月前
|
Java 关系型数据库 数据库连接
Spring Boot项目集成MyBatis Plus操作PostgreSQL全解析
集成 Spring Boot、PostgreSQL 和 MyBatis Plus 的步骤与 MyBatis 类似,只不过在 MyBatis Plus 中提供了更多的便利功能,如自动生成 SQL、分页查询、Wrapper 查询等。
370 3
|
4月前
|
Java 测试技术 Spring
简单学Spring Boot | 博客项目的测试
本内容介绍了基于Spring Boot的博客项目测试实践,重点在于通过测试驱动开发(TDD)优化服务层代码,提升代码质量和功能可靠性。案例详细展示了如何为PostService类编写测试用例、运行测试并根据反馈优化功能代码,包括两次优化过程。通过TDD流程,确保每项功能经过严格验证,增强代码可维护性与系统稳定性。
210 0
|
4月前
|
存储 Java 数据库连接
简单学Spring Boot | 博客项目的三层架构重构
本案例通过采用三层架构(数据访问层、业务逻辑层、表现层)重构项目,解决了集中式开发导致的代码臃肿问题。各层职责清晰,结合依赖注入实现解耦,提升了系统的可维护性、可测试性和可扩展性,为后续接入真实数据库奠定基础。
384 0
|
安全 Java 应用服务中间件
SpringBoot核心【基本配置】
基本配置 1.入口类和相关注解 2.定制Banner 2.1 修改banner图标 2.2 关闭banner 3.SpringBoot的配置文件 3.1 tomcat端口号修改 3.2 常规属性配置 3.3 类型安全的配置
SpringBoot核心【基本配置】
|
Java 应用服务中间件 Maven
传统maven项目和现在spring boot项目的区别
Spring Boot:传统 Web 项目与采用 Spring Boot 项目区别
680 0
传统maven项目和现在spring boot项目的区别
|
XML Java 数据库连接
创建springboot项目的基本流程——以宠物类别为例
创建springboot项目的基本流程——以宠物类别为例
226 0
创建springboot项目的基本流程——以宠物类别为例
|
存储 机器学习/深度学习 IDE
SpringBoot 项目与被开发快速迁移|学习笔记
快速学习 SpringBoot 项目与被开发快速迁移
SpringBoot 项目与被开发快速迁移|学习笔记
|
Java Spring
自定义SpringBoot项目的启动Banner
``Banner``是``SpringBoot``框架一个特色的部分,其设计的目的无非就是一个框架的标识,其中包含了版本号、框架名称等内容,既然``SpringBoot``为我们提供了这个模块,它肯定也是可以更换的这也是``Spring``开源框架的设计理念。