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,该篇就到此。 以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们!

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

时间: 2021-07-20

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

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

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获取yml和properties配置文件的内容

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

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如何读取自定义配置项

我们springboot项目有自己默认的配置文件,一般地由application.yml和bootstrap.yml组成,前者是模块的配置,后者是微服务的配置,后台比前者先被框架加载. 我们有时需要自己定义配置,可能不是简单的字符串,它可能是一个对象,对象里有具体的配置段,它也是application.yml的一部分,你可以把自己的代码添加上,当然你也可以新建全新的文件. 例如,有一个配置由name和version组成,我们在application.yml里可以把它定义成project元素下面的

java读取properties配置文件的方法

本文实例讲述了java读取properties配置文件的方法.分享给大家供大家参考.具体分析如下: 这两天做java项目,用到属性文件,到网上查资料,好半天也没有找到一个满意的方法能让我读取到.properties文件中属性值,很是郁闷,网上讲的获取属性值大概有以下方法,以下三种方法逐渐优化,以达到最好的效果以下都以date.properties文件为例,该文件放在src目录下,文件内容为: startdate=2011-02-07 totalweek=25 方法一: public class

java简单读取properties配置文件的方法示例

本文实例讲述了java简单读取properties配置文件的方法.分享给大家供大家参考,具体如下: 读取配置文件,小结如下 import java.io.FileNotFoundException; import java.io.IOException; import java.util.Properties; public class loadConf { private Properties prop = new Properties(); private void loadconf() t

Java开发中读取XML与properties配置文件的方法

相关阅读: 使用Ajax进行文件与其他参数的上传功能(java开发) 1. XML文件: 什么是XML?XML一般是指可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. 2.XML文件的优点: 1)XML文档内容和结构完全分离. 2)互操作性强. 3)规范统一. 4)支持多种编码. 5)可扩展性强. 3.如何解析XML文档: XML在不同的语言中解析XML文档都是一样的,只不过实现的语法不一样,基本的解析方式有两种,一种是SAX方式,是按照XML文件的顺序一

Python实现读取Properties配置文件的方法

本文实例讲述了Python实现读取Properties配置文件的方法.分享给大家供大家参考,具体如下: JAVA本身提供了对于Properties文件操作的类,项目中的很多配置信息都是放在了Properties文件.但是Python并没有提供操作Properties文件的库,所以,自己动手写个一个可以加载Properties文件的脚本. class Properties: fileName = '' def __init__(self, fileName): self.fileName = fi

Python实现加载及解析properties配置文件的方法

本文实例讲述了Python实现加载及解析properties配置文件的方法.分享给大家供大家参考,具体如下: 这里参考前面一篇:http://www.jb51.net/article/137393.htm 我们都是在java里面遇到要解析properties文件,在python中基本没有遇到这中情况,今天用python跑深度学习的时候,发现有些参数可以放在一个global.properties全局文件中,这样使用的时候更加方便.原理都是加载文件,然后用line方法进行解析判断"=",自

Linux下apache支持PHP配置文件的方法

本文用来记忆整了两天的lamp环境,如果对PHP没有要求建议全部用yum 一键安装,纯属个人经验,主要作用是用来参考的. yum install httpd #yum 安装Apache. php编译安装 安装前记得安装php依赖环境 yum安装PHP5.6的依赖环境 yum -y install gcc gcc-c++ libxml2 libxml2-devel PHP5.6.2下载路径 wget http://mirrors.sohu.com/php/php-5.6.2.tar.gz /con

Android不使用自定义布局情况下实现自定义通知栏图标的方法

本文实例讲述了Android不使用自定义布局情况下实现自定义通知栏图标的方法.分享给大家供大家参考,具体如下: 自定义通知栏图标?不是很简单么.自定义布局都不在话下! 是的,有xml布局文件当然一切都很简单,如果不给你布局文件用呢? 听我慢慢道来! 首先怎么创建一个通知呢? 1.new 一个 复制代码 代码如下: Notification n = new Notification(android.R.drawable.ic_menu_share, null, System.currentTime