最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot實現(xiàn)對注解的切面案例

 更新時間:2022年01月10日 08:47:14   作者:cafe_sj_babe  
這篇文章主要介紹了springboot實現(xiàn)對注解的切面過程,首先定義一個注解、再編寫對注解的切面只是記錄的執(zhí)行時間和打印方法,可以實現(xiàn)其他邏輯,需要的朋友可以參考一下

對注解實現(xiàn)切面案例:

(1)定義一個注解

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnnotation {
? ? String getValues() default "test annotation";
}
@Target(ElementType.METHOD)

表示該注解作用在方法上(type表示類上,field表示成員變量上)

@Retention(RetentionPolicy.RUNTIME)

表示該注解的作用范圍,由于需要在運行時能夠識別到該注解,所以是RUNTIME(SOURCE表示源碼層面上,即編譯成.class時看不見該注解,而CLASS可以,但是在運行時看不到)

(2)編寫對注解的切面

(只是記錄的執(zhí)行時間和打印方法,可以實現(xiàn)其他邏輯)

@Aspect
@Component
@Slf4j
public class MyAspect {
? ? // value也可以寫成value = "(execution(* com.sj..*(..))) && @annotation(zkDistributeLock)"
? ? @Around(value = "@annotation(myAnnotation)", argNames = "proceedingJoinPoint, myAnnotation")
? ? public Object processTest(ProceedingJoinPoint proceedingJoinPoint, MyAnnotation myAnnotation) throws Throwable {
? ? ? ? long beginTime = System.currentTimeMillis();
? ? ? ? // 獲取方法參數(shù)
? ? ? ? Object[] args = proceedingJoinPoint.getArgs();
? ? ? ? // 執(zhí)行方法
? ? ? ? Object res = proceedingJoinPoint.proceed(args);
? ? ? ? long time = System.currentTimeMillis() - beginTime;
? ? ? ? MethodSignature signature = (MethodSignature) proceedingJoinPoint.getSignature();
? ? ? ? String className = proceedingJoinPoint.getTarget().getClass().getName();
? ? ? ? String methodName = signature.getName();
? ? ? ? log.info("注解上的值:{}", myAnnotation.getValues());
? ? ? ? log.info("執(zhí)行時間:{}", time);
? ? ? ? log.info("執(zhí)行類和方法:{} {}", className, methodName);
? ? ? ? return res;
? ? }
}

(3)測試

@GetMapping("/go")
@MyAnnotation(getValues = "success")
public String test1() {
? ? return "hello world";
}

執(zhí)行結(jié)果:

注解上的值:success

執(zhí)行時間:8

執(zhí)行類和方法:com.***.TestController test1

到此這篇關(guān)于springboot實現(xiàn)對注解的切面案例的文章就介紹到這了,更多相關(guān)springboot實現(xiàn)對注解的切面內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java面向?qū)ο蠡A(chǔ)知識之委托和lambda

    Java面向?qū)ο蠡A(chǔ)知識之委托和lambda

    這篇文章主要介紹了Java面向?qū)ο蟮闹泻?lambda,文中有非常詳細的代碼示例,對正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-11-11
  • IDEA在plugins里搜不到mybatisx插件的解決方法

    IDEA在plugins里搜不到mybatisx插件的解決方法

    本文主要介紹了IDEA在plugins里搜不到mybatisx插件的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Java多線程實現(xiàn)模擬12306火車站售票系統(tǒng)

    Java多線程實現(xiàn)模擬12306火車站售票系統(tǒng)

    12360火車票售票系統(tǒng)基本上大家都用過,那你知道是怎么實現(xiàn)的嗎,今天我們就模擬12306火車站售票系統(tǒng)來實現(xiàn),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • 深入了解Java包與訪問控制權(quán)限

    深入了解Java包與訪問控制權(quán)限

    這篇文章主要帶你掌握Java中包的定義及使用以及Java中的4種訪問權(quán)限,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-09-09
  • 詳細分析JVM類加載機制

    詳細分析JVM類加載機制

    JVM將class文件字節(jié)碼文件加載到內(nèi)存中,?并將這些靜態(tài)數(shù)據(jù)轉(zhuǎn)換成方法區(qū)中的運行時數(shù)據(jù)結(jié)構(gòu),在堆(并不一定在堆中,HotSpot在方法區(qū)中)中生成一個代表這個類的java.lang.Class?對象,作為方法區(qū)類數(shù)據(jù)的訪問入口,接下來將詳細講解JVM類加載機制
    2022-04-04
  • Spring Boot創(chuàng)建非可執(zhí)行jar包的實例教程

    Spring Boot創(chuàng)建非可執(zhí)行jar包的實例教程

    這篇文章主要介紹了Spring Boot創(chuàng)建非可執(zhí)行jar包的實例教程,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • ByteArrayOutputStream簡介和使用_動力節(jié)點Java學(xué)院整理

    ByteArrayOutputStream簡介和使用_動力節(jié)點Java學(xué)院整理

    ByteArrayOutputStream 是字節(jié)數(shù)組輸出流。它繼承于OutputStream。這篇文章主要介紹了ByteArrayOutputStream簡介和使用,需要的朋友可以參考下
    2017-05-05
  • JSP request.setAttribute()詳解及實例

    JSP request.setAttribute()詳解及實例

    這篇文章主要介紹了 javascript request.setAttribute()詳解及實例的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • spring boot讀取Excel操作示例

    spring boot讀取Excel操作示例

    這篇文章主要介紹了spring boot讀取Excel操作,結(jié)合實例形式詳細分析了spring boot解析、讀取Excel相關(guān)操作技巧,需要的朋友可以參考下
    2019-11-11
  • springmvc @RequestBody String類型參數(shù)的使用

    springmvc @RequestBody String類型參數(shù)的使用

    這篇文章主要介紹了springmvc @RequestBody String類型參數(shù)的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10

最新評論

双流县| 揭阳市| 兖州市| 甘德县| 晋江市| 原平市| 伊宁市| 额敏县| 日喀则市| 昌都县| 南丹县| 丁青县| 章丘市| 佛学| 海口市| 隆安县| 中阳县| 临桂县| 平南县| 鸡西市| 延川县| 恩平市| 古田县| 镇远县| 英超| 长乐市| 崇信县| 绥棱县| 汉寿县| 泸水县| 凤城市| 永修县| 封开县| 略阳县| 泊头市| 合肥市| 洛阳市| 南投县| 玉山县| 京山县| 云安县|