[JavaWeb]——面试官:谈谈你对springboot配置文件的理解

简介: [JavaWeb]——面试官:谈谈你对springboot配置文件的理解

前言:

  • 什么是配置文件❓

配置文件是用于存储程序或系统配置信息的文本文件。它通常包含了一些参数和选项,用来控制软件或系统的行为和设置。想象一下,当你使用一个软件或系统时,你可以通过修改配置文件来改变一些默认设置,比如更改界面的颜色、调整声音的音量、配置网络连接等等。

  • 为什么有些代码要放到配置文件里面吗❓

使用配置文件,可以在不重新编译程序的情况下,通过修改配置文件,改变程序中用到的一些资源。

  • 为什么改变配置文件不用重新编译原代码❓

编译过程:主要是将源代码转换为可执行的机器码,将代码和依赖的库文件打包在一起生成可执行文件。

加载配置文件时机:配置文件通常在程序运行时被读取和加载。程序在启动时会去读取配置文件中的配置项,并将其加载到内存中供程序运行时使用。

一、springboot中三种配置文件对比

二、语法格式

propertiles

  • 格式:使用键值对的形式,可以使用 = 或 : 分割键和值
  • 缺点:键过长后不易阅读和修改
  • 通过@Value注解读取配置文件的值

value注解的使用 @Value("${配置文件中的key}")

yml(推荐)

  • 格式:使用冒号(:)来分隔键和值,用换行和缩进表示层级关系
  • 注意:分割键值的冒号后边有个空格
  • 优点:层级分明,更具可读性和易用性
  • 通过@Value注解读取配置文件的值

当配置文件中信息过多是使用value注入很不方便

改进:@ConfigurationProperties注解的使用

@ConfigurationProperties @Value的区别

相同点:

  • 都是用来注入外部配置的属性的。

不同点:

  • @Value注解只能一个一个的进行外部属性的注入。
  • @ConfigurationProperties可以批量的将外部的属性配置注入到bean对象的属性中。

XML

XML在我们后端开发中基本不用,在这不在讲解用法。

相关文章
|
16天前
|
机器学习/深度学习 JSON Java
SpringBoot是如何加载配置文件的?
SpringBoot是如何加载配置文件的?
|
9天前
|
消息中间件 缓存 Java
Spring Boot最经典的20道面试题,你都会了吗?
Spring Boot最经典的20道面试题,你都会了吗?
14 0
|
9天前
|
SQL 存储 前端开发
程序技术好文:面试知识点六:JavaWeb
程序技术好文:面试知识点六:JavaWeb
10 1
|
13天前
|
监控 Java 应用服务中间件
浅谈小白对于Javaweb开发整合框架Springboot入门导学
浅谈小白对于Javaweb开发整合框架Springboot入门导学
16 1
|
16天前
|
前端开发 Dubbo Java
spring面试题_spring mvc面试题_springboot面试题库
spring面试题_spring mvc面试题_springboot面试题库
|
2月前
|
Java 应用服务中间件 API
京东面试:SpringBoot同时可以处理多少请求?
Spring Boot 作为 Java 开发中必备的框架,它为开发者提供了高效且易用的开发工具,所以和它相关的面试题自然也很重要,咱们今天就来看这道经典的面试题:SpringBoot同时可以处理多少个请求 ? 准确的来说,Spring Boot 同时可以处理多少个请求,并不取决于 Spring Boot 框架本身,而是取决于其内置的 Web 容器(因为 Web 容器的行为,决定了 Spring Boot 的行为,所以咱们姑且认为两个问题的回答是一样的)。 ## 1.Web三大容器 Web 容器目前也是三分天下,市面上最常见的三种 Web 容器分别是:Tomcat、Undertow 和 Jet
32 1
京东面试:SpringBoot同时可以处理多少请求?
|
25天前
|
设计模式 NoSQL Java
网易面试:SpringBoot如何开启虚拟线程?
虚拟线程(Virtual Thread)也称协程或纤程,是一种轻量级的线程实现,与传统的线程以及操作系统级别的线程(也称为平台线程)相比,它的创建开销更小、资源利用率更高,是 Java 并发编程领域的一项重要创新。 > PS:虚拟线程正式发布于 Java 长期支持版(Long Term Suort,LTS)Java 21(也就是 JDK 21)。 虚拟线程是一种在 Java 虚拟机(JVM)层面实现的逻辑线程,不直接和操作系统的物理线程一一对应,因此它可以减少上下文切换所带来的性能开销。 操作系统线程、普通线程(Java 线程)和虚拟线程的关系如下: ![image.png](https:
30 0
网易面试:SpringBoot如何开启虚拟线程?
|
9天前
|
Java
SpringBoot配置-配置文件分类,server.port修改端口,自定义修改配置内容
SpringBoot配置-配置文件分类,server.port修改端口,自定义修改配置内容
|
10天前
|
监控 NoSQL Java
【面试高频 time:】SpringBoot整合Redisson实现分布式锁
【面试高频 time:】SpringBoot整合Redisson实现分布式锁
10 0
|
16天前
|
JavaScript Java 数据库连接
【Spring Boot】掌握Spring Boot:深入解析配置文件的使用与管理
【Spring Boot】掌握Spring Boot:深入解析配置文件的使用与管理
23 0