zoukankan      html  css  js  c++  java
  • springboot的yml配置文件里有多个参数的调用方式

    本篇教程适用于配置文件一级下有多个二级或三级时,如何在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()
  • 相关阅读:
    d3 之deal with data
    git 使用小结
    【nodemailer】之 work with mustache
    Mustache
    【nodemailer】 初试
    【计算机基础】二.组成1(总线、输入输出)
    【计算机基础】一.概述
    Sring事务管理
    【并发编程】4.JUC中常用的锁
    【并发编程】3.线程与线程池
  • 原文地址:https://www.cnblogs.com/supiaopiao/p/12377729.html
Copyright © 2011-2022 走看看