springboot的yml配置文件里有多个参数的调用方式
2024-09-07 00:31:45
本篇教程适用于配置文件一级下有多个二级或三级时,如何在service层不用通过多个@Value就能获取配置文件的参数
例如yml配置是这样的:
如果service层要引用这些参数,用多个@Value(${xxx})未免太过繁琐,所以还可以通过以下方式实现
1.先写一个实体类,用来区别上图红框中的两个二级目录
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration; /**
* @author sujing
* @since 2020/2/28 11:15
* 钉钉配置管理
**/
@Data
@Configuration
@ConfigurationProperties(prefix = "dingtalk")
public class DingTalkProperties { //钉钉官方参数
private DingTalkParam param = new DingTalkParam(); //钉钉官方api
private DingTalkApi api = new DingTalkApi(); }
2.分别定义两个实体类
import lombok.Data; /**
* @author sujing
* @since 2020/2/28 11:15
**/
@Data
public class DingTalkParam { /*app appKey*/
private String appKey; /*app appSecret*/
private String appSecret; /*企业 corpId*/
private String corpId;
import lombok.Data; /**
* @author sujing
* @since 2020/2/28 11:15
**/
@Data
public class DingTalkApi { /*获取accessToken*/
private String getAccessToken; /*获取用户信息*/
private String getUserInfo; /*获取用户id*/
private String getUserId; /*根据手机号获取userid*/
private String getUserIdByMobile; /*获取企业员工人数*/
private String getOrgUserCount; /*获取部门用户分页列表*/
private String getListByPage;
}
3.如何注入?
直接在service实现类中通过@Resource注入
@Resource
private DingTalkProperties dingTalkProperties;
引用的时候直接通过“对象.参数”即可
dingTalkProperties.getApi().getxxx()
最新文章
- C#窗体中读取修改xml文件
- Google C++单元测试框架GoogleTest---AdvancedGuide(译文)上
- iOS检查App新版本并更新新版本
- remove ---会报错discard不会报错
- php 网页 301 跳转
- GIS的发展
- ios中二维码的使用之二: 二维码的扫描
- 使用CSS中margin和padding的基础和注意事项
- 初学JavaScript七大注意事项
- 转:浅谈CSS在前端优化中一些值得注意的关键点
- Android ActionBar 返回为NULL
- Python进阶之面向对象编程(二)
- myBase Desktop 6.5.1 无限期试用
- per-CPU变量
- C++——volatile关键字的学习
- linux子系统搭建python3
- 使用rpm 打包开发的postgres extension
- 谈谈MySQL无法连接的原因和分析方法
- windows10局域网实现文件共享
- Appium+python自动化4-元素定位uiautomatorviewer
热门文章
- Uncaught Error: Call to undefined function mcrypt_get_iv_size() 解决办法
- [Effective Java 读书笔记] 第二章 创建和销毁对象 第一条
- 票据传递之MS14-068
- ts的特殊数据类型
- [Linux-CentOS7]yum清华源CentOS7
- linux内核编译 fatal error: openssl/opensslv.h: No such file or directory
- Android之ScrollView嵌套ListView冲突 (listView只显示一行)
- Go 1.14 中 Cleanup 方法简介
- DotNet源码学习-HASHSET(初探)
- mysql必知必会--使用数据处理函数