Spring Boot 的配置文件

2025/4/3

向全栈工程师迈进!

在Sping Boot 是给我们提供了两种配置文件的,一种是**.yaml(.yml)后缀** 的文件,一种是**.properties后缀**的文件。

一、application.properties配置文件

在创建好Spring Boot 工程后,其会自动的为我们建立这个配置文件

在我们运行程序的时候,其内部的Tomcat会自动的启动并将端口号设置为8080,若是我们想要修改其端口号,使其不是8080的话,这个时候就得用到我们的配置文件。

在配置文件中修改端口号为9090。

java 复制代码
spring.application.name=demo1

server.port=9090

再次运行时候,显示如下,已经将端口号改成了9090。

也可以修改默认路径,修改如下:

java 复制代码
spring.application.name=demo1

server.port=9090
server.servlet.context-path=/start

再次运行的时候:端口号9090;路径 /start

当通过浏览器访问的时候,就得需要通过端口号9090访问,在默认路径后面再加上要访问的路径。

二、yaml后缀配置文件

对于该配置文件来说,其后缀有两种,一种是.yml,一种是.yaml,但是二者是一样的。对比.properties配置文件来说,yaml配置文件只是书写格式上有区别。但是实际开发中我们更常使用的是.yml配置文件,应为其书写格式更易看懂,结构更加清晰。

同样的来修改器端口号和默认路径

java 复制代码
server:
  port: 9090
  servlet: 
    context-path: /start

在resource文件下,注释了.properties配置文件,新建了一个.yml文件,然后结果如下,同样成功的修改了访问端口号和默认路径。

三、yml配置文件的书写和获取

3.1三方技术配置信息

比如当使用到redis或者mybetis的时候,我们就要为这些三方技术书写配置信息。比如当为redis书写配置信息的时候,我们首先需要在pom.xml文件中引入redis的起步依赖

然后根据redis的文档来编写配置信息

当boot工程启动之后,起步依赖会自动的获取配置文件中的这些信息然后使用。

3.2自定义配置信息

对于自定义配置信息来说。我们要做的事情不仅仅需要书写配置信息,还需要书写代码来获取这些被书写的信息。

比如阿里云的一些信息,如果我们在使用的时候是直接写在JAVA代码中的话,假如哪一天这些信息被更改话,就得重新更改,重新部署这个项目,所以我们需要将如下信息提取出来写在一个相应的配置文件中,然后通过获取配置文件的方式得到这些信息。所以下次修改就只需要修改配置文件就行。

那该怎么获取配置信息?

java 复制代码
@Value("${ali-yun.oss.endpoint}")
public String endpoint;

这样就可以获取到配置文件中的信息。还可以通过在实体类上添加注解来省略,同时属性名对应。

java 复制代码
@ConfigurationProperties(prefix = "ali-yun.oss")
public class demo{
    
    // @Value("${endpoint}")
    public String endpoint;
}

HAPPY HAPPY ------ 2025/4/3

相关推荐
Yeats_Liao18 小时前
物联网接入层技术剖析(一):从select到epoll
java·linux·后端·物联网·struts
一只小逸白18 小时前
LeetCode Go 常用函数速查表
linux·leetcode·golang
文青小兵18 小时前
云计算Linux——数据库MySQL读写分离、数据库备份、恢复(十八)
linux·运维·服务器·数据库·mysql·云计算
Ghost Face...19 小时前
PCI总线配置核心实现与架构解析
linux·运维·架构
上弦月-编程19 小时前
Java类与对象:编程核心解密
java·开发语言·jvm
小钻风336619 小时前
Spring Boot WebSocket 两种集成方式深度解析
spring boot·后端·websocket
Kapaseker19 小时前
为什么 Java 的数组需要 new 出来
android·java·kotlin
Dicky-_-zhang19 小时前
线上故障排查与应急响应实战:从零开始建立你的SRE体系
java·jvm
大大杰哥19 小时前
从 Volatile 到 ThreadLocal:Java 线程安全机制备忘
java·开发语言·jvm
AI人工智能+电脑小能手19 小时前
【大白话说Java面试题 第67题】【JVM篇】第27题:生产环境服务器变慢,诊断思路和性能评估谈谈?
java·服务器·jvm·面试