欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

spring使用aspect注解切面不起作用的排查過程及解決

 更新時(shí)間:2021年06月17日 10:22:51   作者:一個(gè)優(yōu)秀的頹廢程序猿  
這篇文章主要介紹了spring使用aspect注解切面不起作用的排查過程及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

今天做spring使用aspect注解demo,發(fā)現(xiàn)不起作用,問題排查如下:

1.程序正常啟動(dòng),說明jar包依賴沒有問題

2.debug程序不進(jìn)入切面,有可能是路徑問題,根據(jù)這個(gè)思路,果真是路徑問題,在切面配置類的使用@ComponentScan的路徑寫錯(cuò)了。

掃描的路徑為:注解類、切面類及service的上一層目錄即可,假設(shè)項(xiàng)目的結(jié)構(gòu)如下:

則@ComponenScan("demo.com.nrt")即可

SpringBoot切面@aspect--- 注解在嵌套方法不生效的問題

例如在service中方法如下

    @PermissionAop
    @Override
    public List<PoiPermission> getList() {
        List<PoiPermission> list = this.list();
        return list;
    }
    @Override
    public void test(){
        this.getList();
        System.out.println("");
    }

controller中調(diào)用test()方法,test方法中調(diào)用切面方法,切面不生效,無法進(jìn)入切面。

使用如下方式可解決該問題(啟動(dòng)類上需要添加

@EnableAspectJAutoProxy(exposeProxy = true))
    @PermissionAop
    @Override
    public List<PoiPermission> getList() {
        List<PoiPermission> list = this.list();
        return list;
    }
    @Override
    public void test(){
        IPoiPermissionService service = (IPoiPermissionService) AopContext.currentProxy();
        service.getList();
        System.out.println("");
    }

其中IPoiPermissionService為該service類實(shí)現(xiàn)的接口。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java代碼是如何被CPU狂飆起來的

    Java代碼是如何被CPU狂飆起來的

    無論是剛剛?cè)腴TJava的新手還是已經(jīng)工作了的老司機(jī),恐怕都不容易把Java代碼如何一步步被CPU執(zhí)行起來這個(gè)問題完全講清楚。本文就帶你詳細(xì)了解Java代碼到底是怎么運(yùn)行起來的。感興趣的同學(xué)可以參考閱讀
    2023-03-03
  • 通過Class類獲取對(duì)象(實(shí)例講解)

    通過Class類獲取對(duì)象(實(shí)例講解)

    下面小編就為大家?guī)硪黄ㄟ^Class類獲取對(duì)象(實(shí)例講解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • java 中使用匿名類直接new接口詳解及實(shí)例代碼

    java 中使用匿名類直接new接口詳解及實(shí)例代碼

    這篇文章主要介紹了java 中使用匿名類直接new接口詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • 深入理解Java設(shè)計(jì)模式之策略模式

    深入理解Java設(shè)計(jì)模式之策略模式

    這篇文章主要介紹了JAVA設(shè)計(jì)模式之策略模式的的相關(guān)資料,文中示例代碼非常詳細(xì),供大家參考和學(xué)習(xí),感興趣的朋友可以了解下
    2021-11-11
  • 基于SpringBoot和Vue3的博客平臺(tái)發(fā)布、編輯、刪除文章功能實(shí)現(xiàn)

    基于SpringBoot和Vue3的博客平臺(tái)發(fā)布、編輯、刪除文章功能實(shí)現(xiàn)

    在上一個(gè)教程中,我們已經(jīng)實(shí)現(xiàn)了基于Spring?Boot和Vue3的用戶注冊與登錄功能。本教程將繼續(xù)引導(dǎo)您實(shí)現(xiàn)博客平臺(tái)的發(fā)布、編輯、刪除文章功能,需要的朋友參考一下
    2023-04-04
  • 如何使用Java操作Zookeeper

    如何使用Java操作Zookeeper

    這篇文章主要介紹了如何使用Java操作Zookeeper,幫助大家更好的理解和學(xué)習(xí)使用Java,感興趣的朋友可以了解下
    2021-04-04
  • java正則表達(dá)式匹配所有數(shù)字的案例

    java正則表達(dá)式匹配所有數(shù)字的案例

    這篇文章主要介紹了java正則表達(dá)式匹配所有數(shù)字的案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Java使用arthas修改日志級(jí)別詳解

    Java使用arthas修改日志級(jí)別詳解

    在我們線上環(huán)境中,一般不會(huì)開啟debug級(jí)別的日志,為了提高性能?info和warning級(jí)別的日志也一般不會(huì)打印出來,那么如果遇到線上問題,除了使用arthas定位問題,想通過查詢?nèi)罩緛韺?shí)現(xiàn)問題定位,如何查看logger信息,更新logger?level呢,下面我們來了解arthas修改日志級(jí)別
    2022-06-06
  • mybatis水平分表實(shí)現(xiàn)動(dòng)態(tài)表名的項(xiàng)目實(shí)例

    mybatis水平分表實(shí)現(xiàn)動(dòng)態(tài)表名的項(xiàng)目實(shí)例

    本文主要介紹了mybatis水平分表實(shí)現(xiàn)動(dòng)態(tài)表名的項(xiàng)目實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • 玩轉(zhuǎn)spring boot MVC應(yīng)用(2)

    玩轉(zhuǎn)spring boot MVC應(yīng)用(2)

    玩轉(zhuǎn)spring boot,如何快速搭建一個(gè)MCV程序?這篇文章為大家詳細(xì)主要介紹了一個(gè)MCV程序的快速搭建過程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01

最新評(píng)論