Springboot 如何指定获取出 yml文件里面的配置值

之前写过一篇获取properties文件里面的值:

Springboot 指定获取自己写的配置properties文件的值

www.jb51.net/article/217899.htm

现在补充多一篇,指定获取yml里面的配置值 。

内容:

这里分别介绍两种方式,都是基于注解实现,分别是:

@Value("${xxxxx.xx}")

@ConfigurationProperties(prefix = "xxxxx")

进入主题:

@Value("${xxxxx.xx}")

使用这种方式非常简单(每一个注解获取一个对应的配置值),

在yml里面加入我们的自定义配置项,如(大小写随意,调用时对应好就行):

指定获取这些值去使用,如:

    @Value("${myKey.tua}")
    private  String tuaKey;
    @Value("${myKey.aco}")
    private  String acoKey;
    @Value("${mynum.new}")
    private  String myNum;

    @GetMapping("/getMyTest")
    public void getMyTest(){

        System.out.println("tuaKey:"+tuaKey);
        System.out.println("acoKey:"+acoKey);
        System.out.println("myNum:"+myNum);
    }

可以看到结果,获取正常:

@ConfigurationProperties(prefix = "xxxxx")

使用这种方式也非常简单(一次性将多个配置值获取并示例化成bean放入到spring容器里面),

在yml里面加入我们的自定义配置项,如(注意,使用一开始的key参数使用小写,使用大写会出错,因为prefix不支持驼峰命名和下划线形式):

然后我们建一个对于这些配置项的实体类,并使用上注解 @ConfigurationProperties ,如:

prefix指前缀,一般也就是第一个,我们这个例子的第一个是myinfo

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * @Author : JCccc
 * @CreateTime : 2020/5/19
 * @Description :
 **/ 

@Component
@ConfigurationProperties(prefix = "myinfo")
public class MyInfo {

    private String name;
    private Integer age;
    private String description;

    @Override
    public String toString() {
        return "MyTest{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", description='" + description + '\'' +
                '}';
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }
}

指定获取这些值去使用,也就是相当于使用这个类,直接配合@Autowired 使用即可:

    @Autowired
    MyInfo myInfo;

    @GetMapping("/getMyTest")
    public void getMyTest(){

        System.out.println("myInfo:"+myInfo.toString());
        System.out.println("myInfo name:"+myInfo.getName());
    }

可以看到结果,获取正常:

ok,该篇就到此。 以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • SpringBoot四种读取properties文件的方式(小结)

    前言 在项目开发中经常会用到配置文件,配置文件的存在解决了很大一份重复的工作.今天就分享四种在Springboot中获取配置文件的方式. 注:前三种测试配置文件为springboot默认的application.properties文件 #######################方式一######################### com.zyd.type3=Springboot - @ConfigurationProperties com.zyd.title3=使用@Configura

  • 在SpringBoot下读取自定义properties配置文件的方法

    SpringBoot工程默认读取application.properties配置文件.如果需要自定义properties文件,如何读取呢? 一.在resource中新建.properties文件 在resource目录下新建一个config文件夹,然后新建一个.properties文件放在该文件夹下.如图remote.properties所示 二.编写配置文件 remote.uploadFilesUrl=/resource/files/ remote.uploadPicUrl=/resource

  • Springboot读取配置文件及自定义配置文件的方法

    1.创建maven工程,在pom文件中添加依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> </parent> <dependencies> <dependency

  • springboot读取自定义配置文件节点的方法

    今天和大家分享的是自定义配置信息的读取:近期有写博客这样的计划,分别交叉来写springboot方面和springcloud方面的文章,因为springboot预计的篇章很多,这样cloud的文章就需要等到很后面才能写了:分享这两种文章的原因主要是为了方便自己查找资料使用和对将要使用的朋友起到便捷作用: •@Value标记读取(默认可直接读取application.yml的节点) •实体映射application.yml的节点 •实体映射自定义配置文件的节点 •实体映射多层级节点的值 @Valu

  • SpringBoot获取yml和properties配置文件的内容

    (一)yml配置文件: pom.xml加入依赖: <!-- 支持 @ConfigurationProperties 注解 --> <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-configuration-processor --> <dependency> <groupId>org.springframework.boot</groupId>

  • Springboot 如何指定获取出 yml文件里面的配置值

    之前写过一篇获取properties文件里面的值: Springboot 指定获取自己写的配置properties文件的值 www.jb51.net/article/217899.htm 现在补充多一篇,指定获取yml里面的配置值 . 内容: 这里分别介绍两种方式,都是基于注解实现,分别是: @Value("${xxxxx.xx}") @ConfigurationProperties(prefix = "xxxxx") 进入主题: @Value("${xx

  • springboot加载复杂的yml文件获取不到值的解决方案

    目录 springboot加载yml文件获不到值 获取不到yml配置文件指定的值 springboot加载yml文件获不到值 今天使用spring boot读取yml文件,这种多层嵌套的竟然无法读取到(value注解spring.redis.pool.max.wait),即便加上全名也不行,然后网上搜到的内容也未曾满意,很多文章内容都是一样且重复的.最后放弃了查找,突发奇想之下解决了这个问题. 本文旨在如何读取多层嵌套的yml文件,希望能帮到众位. 以下是代码: package com.boot

  • springboot启动不加载bootstrap.yml文件的问题

    目录 springboot启动不加载bootstrap.yml文件 无法识别 bootstrap.yml 小绿叶问题 错误信息 问题定位 解决 springboot启动不加载bootstrap.yml文件 使用nacos做配置中心,但是程序启动失败,没有拉取配置中心的配置信息. 检查之后发现是bootstrap.yml文件没有被加载,在项目的pom.xml文件中添加如下依赖,可能需要添加版本号,具体版本号可以去maven仓库查询,我使用的是 3.0.1版本. <dependency> <

  • springboot实现指定mybatis中mapper文件扫描路径

    目录 指定mybatis中mapper文件扫描路径 mybatis配置多个扫描路径写法 指定mybatis中mapper文件扫描路径 所有的mapper映射文件 mybatis.mapper-locations=classpath*:com/springboot/mapper/*.xml 或者resource下的mapper映射文件 mybatis.mapper-locations=classpath*:mapper/**/*.xml mybatis配置多个扫描路径写法 百度得到,但是很乱,稍微

  • Feign超时 在yml文件里的配置方式

    目录 Feign超时 yml文件配置 Feign用法和基本配置 首先说下我的模块结构 首先在test1模块下新建pojo模块 首先在consumer的模块下新建feign调用类 接下来新建provider模块 Feign超时 yml文件配置 ribbon: # #指建立连接后从服务端读取到可用资源所用的时间 ReadTimeOut: 10000 #建立连接所用的时间,适用于网络状况正常的情况下,两端连接所需要的时间 ConnectTimeout: 5000 Feign用法和基本配置 Spring

  • Springboot 如何指定获取自己写的配置properties文件的值

    获取yml的可以参考这篇: Springboot 指定获取出 yml文件里面的配置值 www.jb51.net/article/217901.htm 直接进入正题: 先创建一个 配置文件test_config.properties: test.number=123456789 接下来获取test.number对应的值 这里我们采取最直接的方式(也可以通过注解获取),特意准备了个工具类 PropertiesUtil.java : package com.test.webflux.util; imp

  • springboot如何读取application.yml文件

    现在开发主要使用微服务框架springboot,在springboot中经常遇到读取application.yml文件的情形. 一.概述 开发过程中经常遇到要读取application.yml文件中的属性值,本文总结几种读取的方式,供参考. 二.详述 我这里使用的是springboot-2.1.2.RELEASE版本,这里使用的是application.properties的配置方式,和使用application.yml的方式是一样的.下面是application.properties文件的内容

  • vue项目总结之文件夹结构配置详解

    前言 之前一段时间都在使用 vue 开发后台管理系统,在摸索的过程中对 vue 本身和模块化.规范化开发有了更深的认知,现在记录下来,希望对其他需要开发项目的人有帮助. 基于 vue.js 的前端开发环境,用于前后端分离后的单页应用开发,可以在开发时使用 ES Next.scss 等最新语言特性.下面随着小编来一起学习学习吧. 项目配置 首先,在确定好使用的框架和组件库后,先要大致了解它们,做到文档基本熟悉.本次开发使用到的有: vue , vuex , axios , elementUI .

  • SpringBoot中5种高大上的yml文件读取方式

    目录 1.Environment 2.YamlPropertiesFactoryBean 3.监听事件 4.SnakeYml 5.jackson-dataformat-yaml 总结 在上一篇文章中,我们从源码角度分析了SpringBoot解析yml配置文件的全流程,那么我们今天就来点实战,总结一下除了烂大街的@Value和@ConfigurationProperties外,还能够通过哪些方式,来读取yml配置文件的内容. 1.Environment 在Spring中有一个类Environmen

  • springboot 多环境配置 yml文件版的实现方法

    关于 dev.sit.uat.prod多环境切换的配置 最近小伙伴跟杨洋我聊到了多环境配置的问题,网上的大部分教程都是copy的,很多文章根本就没法用,小伙伴很苦恼啊,于是心(yu)地(shu)善(lin)良(feng)的杨洋回去写了个demo给了小伙 , 那么这边文章呢,正好给大家讲解下关于springboot 的多环境配置 科普时间:  dev.sit.uat.prod是什么呢? 首先给刚接触的小伙伴们科普下含义 dev--本地开发环境: sit--测试环境: uat--准生产环境: pro

随机推荐