17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式

这篇具有很好参考价值的文章主要介绍了17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

YML配置文件及加载自定义配置文件的几种方式

★ YAML配置文件

其实本质和.properties文件的是一样的。

Spring Boot默认使用SnakeYml工具来处理YAML配置文件,SnakeYml工具默认就会被spring-boot-starter导入,因此无需开发者做任何额外配置。

YAML本质是JSON的超级,它在表示结构化文档时更有表现力。

▲ properties文件使用 .分隔符 作为结构化的表现:

 spring.datasource.url=a
 spring.datasource.user=b
 spring.datasource.password=c
 server.name=fkjava
 server.addrs[0]=guangzhou
 server.addrs[1]=shenzhen
 java.user.names=java01, java02

▲ YAML文件使用缩进和冒号作为结构化的表现,且属性值与key之间也用冒号隔开

 spring:
   datasource:
     url: a
     user: b
     password: c
 server:
   name: fkjava
   addrs: 
     - guangzhou
     - shenzhen
 java:
   user:
     names: java01, java02

【备注】:无论是properties文件,还是YAML配置文件,都可使用逗号隔开的多个值来作为List或数组。

★ 手动加载自定义配置文件

加载自定义的配置文件:

- 1、PropertiesFactoryBean | YamlPropertiesFactoryBean:将属性文件或YAML文件加载成Properties对象。

- 2、YamlMapFactoryBean:它将YAML文件加载成Map对象。

- 3、PropertiesPropertySourceLoader | YamlPropertySourceLoader:将属性文件或YAML文件加载成PropertySource。
  通常用于在配置环境后处理器中使用,接下来可将PropertySource添加到配置环境中。
  
- 4、@PropertySource注解和@TestPropertySource注解只能读取属性文件(propertie文件)
  告诉Spring Boot要去加载哪些额外的属性文件。

代码演示:

1、演示如何通过 YamlPropertySourceLoader 来加载我们自定义的yml配置文件,通过配置环境后处理器,从自定义的yml中获取值。

演示这句话:
PropertiesPropertySourceLoader | YamlPropertySourceLoader:将属性文件或YAML文件加载成PropertySource。 通常用于在配置环境后处理器中使用,接下来可将PropertySource添加到配置环境中。

PropertiesPropertySourceLoader 配置环境后处理器

步骤:
1、自定义一个yml的配置文件
17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式,springboot,spring boot,java

2、编写一个控制器类,通过注解@Value去获取自定义yml配置文件里面的属性值,这@Value是import org.springframework.beans.factory.annotation.Value;

17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式,springboot,spring boot,java

3、定义一个环境配置后处理器,用来让springboot启动的时候额外加载我们自定义的这个yml配置文件。
定义一个环境配置后处理器的类,需要实现EnvironmentPostProcessor这个接口,然后重写run方法。

17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式,springboot,spring boot,java

4、最后需要把这个配置环境后处理器注册到spring.factories中。
17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式,springboot,spring boot,java

5、在去访问PropertySourceLoaderController类里面的testPSL方法,看有没有成功拿到自定义yml配置文件里面的值并返回。

代码演示

演示这句:
YamlMapFactoryBean:它将YAML文件加载成Map对象。

用YamlMapFactoryBean这个工厂bean来加载我们自定义的yml配置文件

代码示例:

步骤:
1、自定义yml配置文件
17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式,springboot,spring boot,java

2、定义一个配置类,让bean加载指定的yml自定义配置文件,将这个bean注入到后面创建的PropertySourceLoaderController类的properties字段里面使用
用@Configuration修饰的类为配置类,在项目启动的时候就会加载这个配置类,然后spring容器就会有我们添加的这个 ymlFB 的bean。
17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式,springboot,spring boot,java

3、创建一个类,然后添加一个Properties的属性,把我们创建的用来加载自定义yml配置文件的bean注入进来
@Resource(name = “ymlFB”) //根据名称注入,这里把名为ymlFB的bean注入到这个属性中 , autowire是根据类型注入

17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式,springboot,spring boot,java

4、进行访问:
17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式,springboot,spring boot,java

用YamlMapFactoryBean这个工厂bean来加载我们自定义的yml配置文件的完整流程
17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式,springboot,spring boot,java文章来源地址https://www.toymoban.com/news/detail-629167.html

到了这里,关于17、YML配置文件及让springboot启动时加载我们自定义的yml配置文件的几种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • SpringBoot案例-配置文件-yml配置文件

    SpringBoot案例-配置文件-yml配置文件

    SpringBoot提供了多种属性配置方式 application.properties application.yml application.yaml 常见配置文件格式对比 XML(臃肿) properties(层级结构不够清晰) yml/yaml( 简洁,以数据为中心, 推荐使用 ) 基本语法 大小写敏感 数值前必须有空格 ,作为分隔符 使用缩进表示层级关系,缩进时

    2024年02月11日
    浏览(11)
  • 聊聊Spring Boot配置文件:优先级顺序、加载顺序、bootstrap.yml与application.yml区别详解

    在 Spring Boot 中,配置文件的优先级顺序是: application-{profile}.yml ( application-{profile}.properties ) application.yml ( application.properties ) bootstrap.yml ( bootstrap.properties )。其中, {profile} 表示不同的环境配置,如 dev 、 test 、 prod 等。 优先级从高到低,高优先级的配置覆盖低优先级

    2024年01月25日
    浏览(18)
  • java springboot yml文件配置 多环境yml

    java springboot yml文件配置 多环境yml

    如果是properties改用yml,直接新增一个 .yml ,删除原 .properties ,系统会自动扫描 application.properties 和 application.yml文件(如果同时存在两个文件,则会优先使用.properties文件?)。 注意:改了之后 需要maven 命令 clean一下 ,清个缓存。 一、yml多环境 如果需要配置多环境的配置

    2024年02月15日
    浏览(16)
  • SpringBoot的配置文件(properties与yml)

    SpringBoot的配置文件(properties与yml)

    SpringBoot 项目中所有重要的数据都是在配置文件中配置的,比如∶ 数据库的连接信息(包含用户名和密码的设置); 项目的启动端口; 第三方系统的调用秘钥等信息; 用于发现和定位问题的普通日志和异常日志; 还可以自定义配置,如配置上传文件的保存地址信息等。 想

    2024年02月12日
    浏览(11)
  • SpringBoot配置文件application.yml的理解

    SpringBoot配置文件application.yml的理解

    一、存放位置分类 1.当前项目根目录下的config目录下 2.当前项目的根目录下 3.resources目录下的config目录下 4.resources目录下 按照这上面的顺序,4个配置文件的优先级依次降低。  二、自定义存放位置和自定义命名 自定义存放位置和自定义配置文件命令和application.properties配置类

    2024年02月09日
    浏览(14)
  • SpringBoot 常用的配置文件 application.yml和 bootstrap.yml的区别

    SpringBoot默认支持properties和YAML两种格式的配置文件。前者格式简单,但是只支持键值对。如果需要表达列表,最好使用YAML格式。SpringBoot支持自动加载约定名称的配置文件,例如application.yml。如果是自定义名称的配置文件,就要另找方法了。可惜的是,不像前者有@PropertySour

    2023年04月15日
    浏览(15)
  • springboot的配置文件如何配置可以实现多个yml相互读取

    在Spring Boot中,可以通过多种方式来实现配置文件的相互读取和组合。如果你想要在一个Spring Boot应用中使用多个YAML( .yml )配置文件,并且希望这些配置文件可以相互读取或者互相覆盖某些配置,你可以采用以下几种方法: 1. 使用 spring.config.import 属性(Spring Boot 2.4及以上版

    2024年02月20日
    浏览(12)
  • SpringBoot中的yml文件中读取自定义配置信息

    SpringBoot中的yml文件中读取自定义配置信息

    开发中遇到的问题,百度的答案我都没有找到,去找大佬获取到的经验总结,这只是其中的一种方法,如果其他大佬有新的方法,可以分享分享。 1.1 yml文件 自定义配置信息,通过我们编写的代码读取。 1.2 类 非静态属性中@Value生效 ps: 不是在控制层中拥有@Controller注解,说明

    2024年02月07日
    浏览(10)
  • SpringBoot - 配置文件application.yml使用详解(附:Profile多环境配置)

    SpringBoot - 配置文件application.yml使用详解(附:Profile多环境配置)

    SpringBoot - 配置文件application.yml使用详解(附:Profile多环境配置) 1,基本介绍 (1)YAML 是 JSON 的超集,简洁而强大,是一种专门用来书写配置文件的语言,可以替代 application.properties。 (2)在创建一个 SpringBoot 项目时,引入的 spring-boot-starter-web 依赖间接地引入了 s

    2024年02月08日
    浏览(22)
  • JavaEE进阶(6)SpringBoot 配置文件(作用、格式、properties配置文件说明、yml配置文件说明、验证码案例)

    JavaEE进阶(6)SpringBoot 配置文件(作用、格式、properties配置文件说明、yml配置文件说明、验证码案例)

    接上次博客:JavaEE进阶(5)Spring IoCDI:入门、IoC介绍、IoC详解(两种主要IoC容器实现、IoC和DI对对象的管理、Bean存储、方法注解 @Bean)、DI详解:注入方式、总结-CSDN博客 目录 配置文件作用 SpringBoot配置文件  配置文件的格式 properties 配置文件说明 properties 基本语法 读取配置

    2024年01月23日
    浏览(15)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包