【JavaEE & Spring】SpringBoot 配置文件

这篇具有很好参考价值的文章主要介绍了【JavaEE & Spring】SpringBoot 配置文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 配置文件的作用

1.1 配置文件的说明

  • 计算机上有数以千计的配置文件, 使用软件和硬件等都需要有配置文件,在C盘中存在;
  • 配置文件主要是为了解决硬编码带来的问题,把可能发生改变的信息,放在一个集中的地方,当我们启动某个程序时,应用程序从配置文件中读取数据,并加载运行。

1.2 SpringBoot 配置文件

SpringBoot 支持并定义了配置文件的格式,也在另一个层面达到了规范其他框架集成到SpringBoot的目的。

很多项目或者框架的配置信息也放在配置文件中,比如:

  • 项目的启动端口
  • 数据库的连接信息(包含用户名和密码的设置)

2. 配置文件的格式

SpringBoot 配置文件有以下三种格式:

  • application.properties
  • application.yml
  • application.yaml

当应⽤程序启动时, Spring Boot会⾃动从classpath路径找到并加载application.properties 和 application.yaml 或者 application.yml ⽂件.
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee

特殊说明

  1. 理论上讲,.properties 和 .yml 可以并存在于一个项目中, 当 .properties 和 .yml 并存时, 两个配置都会加载。如果配置文件内容有冲突,则以 .properties 为主,也就是 properties 优先级高;
  2. 虽然理论上来讲, .properties 可以 和 .yml 共存, 但实际的业务当中, 我们通常会采取一种同一个配置文件格式, 这样可以更好的维护;

3. properties 配置文件说明

properties 配置文件是最早期的配置文件格式, 也是创建 SpringBoot 项目默认的配置文件~

3.1 properties 基本语法

properties 是以键值的形式配置的,key 和 value 之间是以“=”连接的,如:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
SpringBoot配置文件官网

3.2 读取配置文件

  • 如果在项目中想要主动读取配置文件的内容, 可以使用 @Value 注解使用 "${}"的格式来读取,例如:
    【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
    【运行结果如下】
    【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee

3.3 properties 缺点分析

properties 配置是以 key-value 的形式配置的,如下图所⽰:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
从上述配置key看出,properties 配置⽂件中会有很多的冗余的信息,⽐如这些:【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
想要解决这个问题,就可以使⽤ yml 配置⽂件的格式化了.

4. yml 配置文件说明

yml 是 YAML 是缩写,它的全称 Yet Another Markup Language 翻译成中⽂就是“另⼀种标记语⾔

4.1 yml 的基本语法

yml 是树形结构的配置⽂件,它的基础语法是"key: value".
key 和 value 之间使⽤英⽂冒号加空格的⽅式组成空格不可省略
基础语法如下:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee

第⼀项的配置为正确的,key 也是⾼亮显⽰的. 第⼆项没有空格是错误的使⽤⽅式,第⼆项的 key 也没有⾼亮显⽰

使⽤ yml 连接数据库
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
yml 和 properties 连接数据库的配置对⽐
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee

4.2 yml 使⽤进阶

4.2.1 yml 配置不同数据类型及 null

【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee

4.2.1.1 yml 配置读取

yml 读取配置的⽅式和 properties 相同,使⽤ @Value 注解即可,实现代码如下:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee

4.2.1.2 注意事项:value 值加单双引号

字符串默认不⽤加上单引号或者双引号,如果加英⽂的单双引号可以表⽰特殊的含义。尝试在 application.yml 中配置如下信息:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
以上程序的执⾏结果如下图所⽰:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
从上述结果可以看出:

  • 字符串默认不用加上单引号或者双引号。
  • 单引号会转义特殊字符,使其失去特殊功能,始终是一个普通的字符串
  • 双引号不会转义字符串里面的特殊字符,特殊字符会表示本身的含义

4.2.2 配置对象

我们还可以在 yml 中配置对象,如下配置:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
这个时候就不能⽤ @Value 来读取配置中的对象了,此时要使⽤另⼀个注解
@ConfigurationProperties 来读取,具体实现如下:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【方法调用类】
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee

4.2.3 配置集合

配置⽂件也可以配置 list 集合,如下所⽰:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【调用类】
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee

4.2.4 配置Map

配置⽂件也可以配置 map,如下所⽰:
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【调用类】
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee

4.3 yml优缺点

  • 优点

    1. 可读性高,写法简单,易于理解
    2. 支持更多的数据类型,可以简单表达对象,数组,List,Map等数据形态。
    3. 支持更多的编程语言,不止是Java中可以使用,在Golang,Python,Ruby,JavaScript中也可以使用
  • 缺点:

    1. 不适合写复杂的配置⽂件
      【JavaEE & Spring】SpringBoot 配置文件,# Java,spring boot,spring,java-ee
    2. 对格式有较强的要求(⼀个空格可能会引起⼀场⾎案)

5. 综合训练 – 验证码练习

代码仓库文章来源地址https://www.toymoban.com/news/detail-812363.html

6. 总结

  1. properties 是以 key = value 的形式配置的键值类型的配置文件, yml 使用的是树形配置方式.
  2. 读取配置文件内容, 使用 @value 注解, 注解内使用 “${}” 的格式读取.
  3. yml 层级之间使用换行缩进的方式配置, key 和 value 之间使用 “:”(英文冒号) 加空格的方式设置, 并且空格不可省略.
  4. properties 为早期并且默认的配置文件格式, 其配置存在一定的冗余数据, 使用 yml 可以很好的解决冗余的问题, 但不适合复杂配置.
  5. yml 可以和 properties 共存, 但一个项目中建议使用一种配置类型文件.

到了这里,关于【JavaEE & Spring】SpringBoot 配置文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • java Spring Boot将不同配置拆分入不同文件管理

    java Spring Boot将不同配置拆分入不同文件管理

    关于java多环境开发 最后还有一个小点 我们一般会将不同的配置 放在不同的配置文件中 好处肯定就在于 想换的时候非常方便 那么 我们直接看代码 我们将项目中的 application.yml 更改代码如下 这里 意思是 我们选择了dev 环境 然后创建一个文件 叫 application-dev.yml 参考代码如下

    2024年02月11日
    浏览(14)
  • Java实战:Spring Boot application.yml配置文件详解

    本文将详细介绍Spring Boot application.yml 配置文件的使用和配置项。我们将探讨 application.yml 文件的基本概念,以及如何使用它来配置Spring Boot应用程序的各个方面。此外,我们将通过具体的示例来展示如何配置不同的Spring Boot组件,如数据源、数据库、缓存、邮件服务等。本文适

    2024年04月24日
    浏览(15)
  • Java企业级开发学习笔记(4.4)Spring Boot加载自定义配置文件

    Java企业级开发学习笔记(4.4)Spring Boot加载自定义配置文件

    创建 Spring Boot 项目 单击【创建】按钮 在 resources 里创建 myconfig.properties 文件 设置文件编码 设置学生的四个属性值 在 cn.kox.boot 包里创建config子包,在子包里创建 StudentConfig 打开自带的测试类 ConfigDemo01ApplicationTests 注入学生配置实体,创建 testStudentConfig() 测试方法,在里面输

    2024年02月08日
    浏览(14)
  • javaee spring配置文件bean标签详解

    bean标签中添加scope属性,设置bean对应对象生成规则. scope = “singleton” 单例,默认值,适用于实际开发中的绝大部分情况. scope=“prototype” 多例,适用于struts2中的action配置 注意: 只对单例有效,设置scope=\\\"singleton\\\"时测试 延时创建属性. lazy-init=“false” 默认值,不延迟创建,即在启动时

    2024年02月11日
    浏览(26)
  • 【Spring Boot】Spring Boot配置文件详情

    【Spring Boot】Spring Boot配置文件详情

     Spring Boot是一个开源的Java框架,用于快速构建应用程序和微服务。它基于Spring Framework,通过自动化配置和约定优于配置的方式,使开发人员可以更快地启动和运行应用程序。Spring Boot提供了许多开箱即用的功能和插件,包括嵌入式Web服务器、安全性、数据访问、缓存、测试

    2024年02月12日
    浏览(6)
  • Spring —— Spring Boot 配置文件

    Spring —— Spring Boot 配置文件

    JavaEE传送门 JavaEE Spring —— Bean 作用域和生命周期 Spring —— Spring Boot 创建和使用 如果没有配置信息, Spring Boot 项目就不能连接和此操作数据库, 甚至是不能保存可以用于排查问题的关键日志, 配置文件的作用是非常重要的. 系统使用的配置文件 (系统配置文件), 如端口号的配

    2023年04月09日
    浏览(12)
  • SpringBoot整理-Spring Boot配置

    Spring Boot 的配置系统是其核心功能之一,旨在简化 Spring 应用的配置过程。Spring Boot 提供了一种灵活的方式来配置你的应用,无论是通过外部配置文件,环境变量,命令行参数还是在代码中直接配置。以下是关于 Spring Boot 配置的几个重要方面: 配置文件 application.prop

    2024年01月25日
    浏览(15)
  • 【Spring Boot学习一】创建项目 && Spring Boot的配置文件

    【Spring Boot学习一】创建项目 && Spring Boot的配置文件

    目录 一、安装插件 二、创建Spring Boot项目 1、创建项目 1.1 使用IDEA创建  1.2 网页版本创建 2、项目目录介绍与运行 三、Sping Boot的配置文件(重点) 🌷1、.properties配置文件 (1)基础语法:Key = value (2)读取配置⽂件中的内容,@Value 注解使⽤“${}”的格式读取; 🌷2、.y

    2024年02月16日
    浏览(9)
  • Spring Boot配置文件

    Spring Boot配置文件

    日升时奋斗,日落时自省  目录 1、配置文件作用 2、配置文件格式 2.1、使用注意 3、properties配置文件 3.1、注释中文问题 3.2、properties语法格式 3.3、读取配置文件 3.3.1、Value读取 3.3.2、PropertySource读取 3.3.3、原生方式读取配置文件 3.4、properties缺点分析 4、yml配置文件 4.1、优点

    2024年02月01日
    浏览(9)
  • 【Spring Boot】掌握Spring Boot:深入解析配置文件的使用与管理

    【Spring Boot】掌握Spring Boot:深入解析配置文件的使用与管理

    💓 博客主页:从零开始的-CodeNinja之路 ⏩ 收录文章:【Spring Boot】掌握Spring Boot:深入解析配置文件的使用与管理 🎉欢迎大家点赞👍评论📝收藏⭐文章 配置文件主要是为了解决硬编码带来的问题,把可能会发生改变的信息,放在⼀个集中的地方,当我们启 动某个程序时,应用程

    2024年04月23日
    浏览(13)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包