【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 application.yml配置文件详解

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

    2024年04月24日
    浏览(42)
  • java Spring Boot将不同配置拆分入不同文件管理

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

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

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

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

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

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

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

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

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

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

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

    2024年01月25日
    浏览(51)
  • 【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日
    浏览(40)
  • 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日
    浏览(36)
  • 【Spring Boot】掌握Spring Boot:深入解析配置文件的使用与管理

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

    2024年04月23日
    浏览(37)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包