java boot项目读取yml配置信息

之前 我们讲过 boot的配置文件格式主要有三种
application.properties
application.yml
application.yaml

我们说推荐用
application.yml
其实从 xml 到 yml 都是要系统去读取他的配置信息 今天 我们就来写一下 在java中读取 yml的配置

这里 我在 yml中多加两个配置
代码如下

min: 1
users:
  name: 小猫猫

在这里插入图片描述

然后 我们实在在 启动类同目录下创建 controller 文件夹 然后下面创建一个UserController类 这里 我已经建好了
然后在UserController中编写代码如下

package com.example.threshold.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;

//声明Controller控制器
@RestController
@RequestMapping("/user")
public class UserController {

    @Value("${min}")
    private String minput;

    // 设置一个 GET接口  子路径get  接受一个id参数  id要跟在路径后面
    @GetMapping
    public String getId() {
        return minput;
    }
}

这里 我们通过Value标识符 读取了配置文件中的min 定义了一个字符串类型的minput来接受返回的值
因为这是我们自己定义的一个值 他只会帮我读成字符串 所以要用字符串类型接

然后 我们定义了一个 get的方法 向外返回拿了配置文件中min值的minput

然后 我们启动项目 访问暴露的接口
在这里插入图片描述
在这里插入图片描述

可以看到 min的值 我们就拿到了

那么 如果是这样的两级数据呢?
在这里插入图片描述

其实很简单 就像取json的值一样
XX.XX
我们将UserController类的代码修改如下

package com.example.threshold.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;

//声明Controller控制器
@RestController
@RequestMapping("/user")
public class UserController {

    @Value("${users.name}")
    private String UserName;

    // 设置一个 GET接口  子路径get  接受一个id参数  id要跟在路径后面
    @GetMapping
    public String getId() {
        return UserName;
    }
}

取users下的name 那就直接 users.name 如果还有层级 那就继续往后加点
然后 我们重新启动 访问接口
在这里插入图片描述
也是没有什么问题

然后 我们在yml中加一个

list:
  - eml
  - ts
  - vue

数组类型的
在这里插入图片描述
我们用下标访问 改写 UserController 代码如下

package com.example.threshold.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;

//声明Controller控制器
@RestController
@RequestMapping("/user")
public class UserController {

    @Value("${list[0]}")
    private String ListTom;

    // 设置一个 GET接口  子路径get  接受一个id参数  id要跟在路径后面
    @GetMapping
    public String getId() {
        return ListTom;
    }
}

直接获取list的0下标
然后返回 我们访问接口
在这里插入图片描述
成功拿到了list的0下标

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值