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

键盘敲烂,年薪30万

[JavaWeb]——面试官:谈谈你对springboot配置文件的理解_第1张图片

目录

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

二、语法格式

propertiles

yml(推荐)

XML


前言:

  • 什么是配置文件❓

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

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

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

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

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

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

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

[JavaWeb]——面试官:谈谈你对springboot配置文件的理解_第2张图片

二、语法格式

propertiles

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

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

[JavaWeb]——面试官:谈谈你对springboot配置文件的理解_第3张图片

yml(推荐)

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

[JavaWeb]——面试官:谈谈你对springboot配置文件的理解_第4张图片

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

改进:@ConfigurationProperties注解的使用

 
  

@ConfigurationProperties @Value的区别

相同点:

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

不同点:

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

XML

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

你可能感兴趣的:(JavaWeb,spring,boot,java,后端)