Java反射獲取所有Controller和RestController類的方法
Java反射獲取所有Controller和RestController類的方法
引入三方反射工具Reflections
<dependency> <groupId>org.reflections</groupId> <artifactId>reflections</artifactId> <version>0.10.2</version> </dependency>
利用反射獲取指定包下的Controller類
public class ControllerClassHolder { public static final Reflections REFLECTION = new Reflections("com.example.controller"); public static final Set<Class<?>> CLASSES; static { CLASSES = REFLECTION.getTypesAnnotatedWith(Controller.class); CLASSES.addAll(REFLECTION.getTypesAnnotatedWith(RestController.class);) } }
獲取Controller方法
每個http請求基本都會使用@RequestMapping注解
List<Method> methods = new ArrayList<>(); for (Class<?> controllerClass : CLASSES) { Method[] declaredMethods = controllerClass.getDeclaredMethods(); Set<Method> methods = Arrays.stream(declaredMethods) .filter(m -> m.getAnnotation(RequestMapping.class) != null) .collect(Collectors.toSet()); }
到此這篇關(guān)于Java反射獲取所有Controller和RestController類的方法的文章就介紹到這了,更多相關(guān)Java反射獲取Controller內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java中遍歷ConcurrentHashMap的四種方式詳解
這篇文章主要介紹了Java中遍歷ConcurrentHashMap的四種方式詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-10-10Java Thread之Sleep()使用方法總結(jié)
這篇文章主要介紹了Java Thread之Sleep()使用方法總結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05java編程實現(xiàn)基于UDP協(xié)議傳輸數(shù)據(jù)的方法
這篇文章主要介紹了java編程實現(xiàn)基于UDP協(xié)議傳輸數(shù)據(jù)的方法,較為詳細(xì)的分析了UDP協(xié)議的原理及Java編程實現(xiàn)數(shù)據(jù)傳輸客戶端與服務(wù)器端的相關(guān)技巧,需要的朋友可以參考下2015-11-11Java調(diào)用Zookeeper的實現(xiàn)步驟
本文主要介紹了Java調(diào)用Zookeeper的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08Java實現(xiàn)多級表頭和復(fù)雜表頭的導(dǎo)出功能
這篇文章主要為大家詳細(xì)介紹了Java實現(xiàn)多級表頭和復(fù)雜表頭的導(dǎo)出功能的相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-03-03詳解如何在項目中應(yīng)用SpringSecurity權(quán)限控制
本文主要介紹了如何在項目中應(yīng)用SpringSecurity權(quán)限控制,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06