亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

springboot yml配置文件定義list集合、數(shù)組和map以及使用中的錯(cuò)誤

 更新時(shí)間:2023年07月28日 09:14:11   作者:騎著蝸牛@you  
這篇文章主要介紹了springboot yml配置文件定義list集合、數(shù)組和map以及使用中遇到的錯(cuò)誤問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

1. 在平時(shí)的yml配置文件中

我們經(jīng)常使用到配置基本數(shù)據(jù)類型的字符串,比如配置日志文件的寫法如下:

# 配置日志輸出級(jí)別
logging:
  # 指定logback配置文件的位置 
  config: classpath:logback-spring.xml
  # 文件日志要輸出的路徑
  path: E:/logs/springboot_server
  # 日志的輸出級(jí)別
  level:
    root: info

獲取屬性值的話可以通過@value 注解來實(shí)現(xiàn),如下:

@Value("${logging.path}")
private String path;    // 獲取日志文件的輸出路徑

2. 下面說一下

如何在yml配置文件中定義list集合、對(duì)象集合、數(shù)組以及map集合等

2.1定義list集合 

# 攔截器路徑攔截或者不攔截配置
interceptorconfig:
  path:
    #該路徑下任何類型請(qǐng)求均攔截
    include:
      - /api/v1/token/api_token
      - /api/v1/yibaotong/save

或者寫成

# 攔截器路徑攔截或者不攔截配置
interceptorconfig:
  path:
    #該路徑下任何類型請(qǐng)求均攔截
    include: [/api/v1/token/api_token,/api/v1/yibaotong/save]

這里需要注意的是,定義list集合不能用@value注解來獲取list集合的所有值,需要定義一個(gè)配置類bean,然后使用       

@ConfigurationProperties注解來獲取list集合值,

做法如下:

@Data
@Component
@ConfigurationProperties(prefix = "interceptorconfig.path") // 配置文件的前綴
public class InterceptorPathBean
{
    /*
     * 需要攔截的路徑
     */
    private List<String> include;
}

如果使用@value注解會(huì)報(bào)錯(cuò);

2.2 定義對(duì)象list集合

首先創(chuàng)建一個(gè)user對(duì)象如下:

@Data
public class User implements Serializable
{  
    private static final long serialVersionUID = 1L;
    private String appId;
    private String password;
}

然后yml配置文件的寫法如下:

jwt:
  userlist:
    - appId: YiBaoTong
      password: 123456
    - appId: ZhiKe
      password: 123456

定義配置bean使用@ConfigurationProperties注解獲取對(duì)象集合值:

@Data
@Component
@ConfigurationProperties(prefix = "jwt") // 配置 文件的前綴
public class JwtConfigBean
{
    /**
     * 用戶列表
     */
    private List<User> userlist;
}

2.3 定義數(shù)組

格式如下:

interceptorconfig:
  path:
    includes: /api/v1,/api/v2  #注意要用逗號(hào)分隔開

可以通過@value注解獲取數(shù)組值,如下:

 @Value("${interceptorconfig.path.includes}")
 private String[] includes;

也可以通過創(chuàng)建配置類bean,使用@ConfigurationProperties注解獲取,如下:

@Data
@Component
@ConfigurationProperties(prefix = "interceptorconfig.path") // 配置 文件的前綴
public class InterceptorPathBean
{  
    private String[] includes;
}

2.4 定義map集合

如下:

interceptorconfig:
  path:
    maps: {name: 小明,age: 24}

或者寫成:

interceptorconfig:
  path:
    maps:
      name: 小明
      age: 24

 通過創(chuàng)建配置類bean,使用@ConfigurationProperties注解獲取map值,如下:

@Data
@Component
@ConfigurationProperties(prefix = "interceptorconfig.path") // 配置 文件的前綴
public class InterceptorPathBean
{
    private Map<String , String> maps;
}

總結(jié)

以上就是spring boot yml配置文件定義基本數(shù)據(jù)類型和引用數(shù)據(jù)類型的方式。

這些僅為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論