或定或摇江上柳,为鸾为凤月中篁。
浣溪沙·散步山前春草香

levi125

园龄:4年6个月粉丝:35关注:20

2020-09-28 17:39阅读: 30048评论: 2推荐: 0

SpringBoot yaml配置List 数组对象并映射

简介

最近有这样一个需求

1. 在yml文件动态配置项目名称与ID (动态配置通过nacos实现,这里不讲述)

2. 因为列表数量很少,又会改动,又不想存数据库单独建个表维护,故通过配置文件的项目列表信息

application.yml 配置

新增/删除/更改 list 即可

projects:
  list:
    - name: project_one
      projectId: project_id_111111
    - name: project_two
      projectId: project_id_222222
    - name: your_name
      projectId: your_id

 配置类

@ConfigurationProperties(prefix = "projects")

复制代码
@Configuration
@ConfigurationProperties(prefix = "projects")
public class Projects {
    public static List<Map<String, String>> list;   //static 才能拿配置值

    public static List<Map<String, String>> getList() {
        return list;
    }

    public void setList(List<Map<String, String>> list) {
        Projects.list = list;
    }
}
复制代码

接口

@GetMapping("/projects")
public Result<Object> projectList() {
    List<Map<String, String>> list = Projects.getList(); 

return Result.ok(list);
}

 响应效果

复制代码
{
  "success": true,
  "message": "操作成功!",
  "code": 200,
  "result": [
    {
      "name": "project_one",
      "projectId": "project_id_111111"
    },
    {
      "projectId": "project_id_222222",
      "name": "project_two"
    },
    {
      "projectId": "your_id",
      "name": "your_name"
    }
  ],
  "timestamp": 1601342384895
}
复制代码

 

本文作者:levi125

本文链接:https://www.cnblogs.com/levi125/p/13745976.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   levi125  阅读(30048)  评论(2编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
展开