日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

所有配置_Springboot 打印所有配置

發布時間:2023/12/19 javascript 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 所有配置_Springboot 打印所有配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對接一個第三方應用做調試時,想打印出所有的配置,調試我這邊做的配置是否有效,摸索了一番后找到了一個解決方案,廢話不多說,直接上代碼。

image.png

package com.marioplus;import org.springframework.boot.CommandLineRunner;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;import org.springframework.core.env.ConfigurableEnvironment;import org.springframework.core.env.EnumerablePropertySource;import org.springframework.core.env.MutablePropertySources;import javax.annotation.Resource;import java.util.Arrays;import java.util.Collections;import java.util.Comparator;import java.util.Map;import java.util.function.Function;import java.util.stream.Collectors;import java.util.stream.StreamSupport;@SpringBootApplicationpublic class App extends SpringBootServletInitializer implements CommandLineRunner { @Resource private ConfigurableEnvironment springEnv; public static void main(String[] args) { SpringApplication.run(App.class, args); } @Override public void run(String... args) throws Exception { MutablePropertySources propSrcs = springEnv.getPropertySources(); // 獲取所有配置 Map<String, String> props = StreamSupport.stream(propSrcs.spliterator(), false) .filter(ps -> ps instanceof EnumerablePropertySource) .map(ps -> ((EnumerablePropertySource) ps).getPropertyNames()) .flatMap(Arrays::stream) .distinct() .collect(Collectors.toMap(Function.identity(), springEnv::getProperty)); // key 和 value 之間的最小間隙 int interval = 20; int max = props.keySet().stream() .max(Comparator.comparingInt(String::length)) .orElse("") .length(); // 打印 props.keySet().stream() .sorted() .forEach(k -> { int i = max - k.length() + interval; String join = String.join("", Collections.nCopies(i, " ")); System.out.println(String.format("%s%s%s", k, join, props.get(k))); }); }}

歡迎關注我的公眾號,和我一起,每天進步一點點

總結

以上是生活随笔為你收集整理的所有配置_Springboot 打印所有配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。