springboot yml對于list列表配置方式

1、背景

我們在使用@ConfigurationProperties(prefix = "system") 讀取yml配置文件過程中會遇到讀取yml文件中列表。如:yml文件設(shè)置訪問白名單,Config里面使用List集合接收。方法比較簡單。整理如下

2、實現(xiàn)過程(“-”)

  • yml文件 列表前都是‘ - ’ 加空格開頭
# 訪問白名單
system:
  whiteList:
    - /sso/auth/api
    - /swagger-ui
    - /webjars/springfox-swagger-ui/
    - /swagger-resources
    - /v2/api-docs
    - /api/garmin/testRedis
    - /api/aladdin/channel/
  • Config配置文件使用list 接收
@Configuration
@ConfigurationProperties(prefix = "system")
public class TokenWhiteListConfig {
    // 配置文件使用list接收
    private List<String> whiteList;

    public List<String> getWhiteList() {
        return whiteList;
    }
    public void setWhiteList(List<String> whiteList) {
        this.whiteList = whiteList;
    }
  • 過濾器處理地方
    @Autowired
    private TokenWhiteListConfig whiteListConfig;

 // 檢驗白名單 減少日志輸出
    private boolean chechWhiteList(String  uri){
//        log.info("請求路徑:{}",uri);
        for(String url: whiteListConfig.getWhiteList()){
            if(uri.contains(url)){
//                log.info("存在白名單內(nèi):{}",url);
                return true;
            }
        }
        return false;
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容