判斷字符串為空和判斷集合是否為空用到依賴,也可以改成自己的方式
<!-- Spring Web --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>5.2.12.RELEASE</version> </dependency>
/** * 判斷指定url地址是否匹配指定url集合中的任意一個 * * @param urlPath 指定url地址 * @param urls 需要檢查的url集合 * @return 是否匹配 匹配返回true,不匹配返回false */ public static boolean matches(String urlPath, List<String> urls) { if (StringUtils.isEmpty(urlPath) || CollectionUtils.isEmpty(urls)) { return false; } for (String url : urls) { if (isMatch(url, urlPath)) { return true; } } return false; } /** * 判斷url是否與規則配置: * ? 表示單個字符 * * 表示一層路徑內的任意字符串,不可跨層級 * ** 表示任意層路徑 * * @param url 匹配規則 * @param urlPath 需要匹配的url * @return */ public static boolean isMatch(String url, String urlPath) { AntPathMatcher matcher = new AntPathMatcher(); return matcher.match(url, urlPath); }
使用測試
public static void main(String[] args) { List list = new LinkedList(); list.add("/api/**/insert/**"); String url = "/api/ces11/insert/11"; System.out.println(matches(url, list)); }