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

SpringAop中AspectJ框架的切入點表達式

 更新時間:2023年08月15日 11:18:10   作者:辰小白  
這篇文章主要介紹了SpringAop中AspectJ框架的切入點表達式,AspectJ是一個基于Java語言的AOP框架,Spring2.0以后新增了對AspectJ切點表達式支持,@AspectJ 是AspectJ1.5新增功能,通過JDK5注解技術(shù),允許直接在Bean類中定義切面,需要的朋友可以參考下

1.AspectJ簡介

  • AspectJ是一個基于Java語言的AOP框架
  • Spring2.0以后新增了對AspectJ切點表達式支持
  • @AspectJ 是AspectJ1.5新增功能,通過JDK5注解技術(shù),允許直接在Bean類中定義切面
  • 新版本Spring框架,建議使用AspectJ方式來開發(fā)AOP
  • 主要用途:自定義開發(fā)

2.切入點表達式

execution()

用于描述方法

語法:execution(修飾符 返回值 包.類.方法名(參數(shù)) throws異常)

修飾符,一般省略

public公共方法
*任意

返回值,不能省略

void返回沒有值
String返回值字符串
*任意

包,[省略]

com.gyf.crm固定包
com.gyf.crm.*.service crm包下面子包任意 (例如:com.gyf.crm.staff.service)
com.gyf.crm..  crm包下面的所有子包(含自己)
com.gyf.crm.*.service..  crm包下面任意子包,固定目錄service,service目錄任意包

類,[省略]

UserServiceImpl                         指定類
*Impl以Impl結(jié)尾
User*   以User開頭
*      任意

方法名,不能省略

addUser                                       固定方法
add*            以add開頭
*Do            以Do結(jié)尾
*          任意

(參數(shù))

()      無參
(int)      一個整型
(int ,int)    兩個
(..)       參數(shù)任意

throws ,可省略,一般不寫。

案例1

execution(* com.gyf.crm.*.service..*.*(..))

案例2 或

<aop:pointcut expression="execution(* com.gyf.crm.service.*.*(..)) || 
execution(* com.gyf.*Do.*(..))" id="myPointCut"/>

within:

匹配包或子包中的方法(了解)

within(com.gyf.aop..*)

this:

匹配實現(xiàn)接口的代理對象中的方法(了解)

this(com.gyf.aop.user.UserDAO)

target:

匹配實現(xiàn)接口的目標(biāo)對象中的方法(了解)

target(com.gyf.aop.user.UserDAO)

args:

匹配參數(shù)格式符合標(biāo)準(zhǔn)的方法(了解)

args(int,int)

bean(id) 

對指定的bean所有的方法(了解)

bean('userServiceId')

3.通知類型

  • before:前置通知(應(yīng)用:各種校驗):在方法執(zhí)行前執(zhí)行,如果通知拋出異常,阻止方法運行
  • afterReturning:后置通知(應(yīng)用:常規(guī)數(shù)據(jù)處理):方法正常返回后執(zhí)行,如果方法中拋出異常,通知無法執(zhí)行,必須在方法執(zhí)行后才執(zhí)行,所以可以獲得方法的返回值。
  • around:環(huán)繞通知(應(yīng)用:十分強大,可以做任何事情):方法執(zhí)行前后分別執(zhí)行,可以阻止方法的執(zhí)行,必須手動執(zhí)行目標(biāo)方法
  • afterThrowing:拋出異常通知(應(yīng)用:包裝異常信息):方法拋出異常后執(zhí)行,如果方法沒有拋出異常,無法執(zhí)行
  • after:最終通知(應(yīng)用:清理現(xiàn)場):方法執(zhí)行完畢后執(zhí)行,無論方法中是否出現(xiàn)異常

到此這篇關(guān)于SpringAop中AspectJ框架的切入點表達式的文章就介紹到這了,更多相關(guān)AspectJ框架的切入點表達式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中如何自定義一個類加載器加載自己指定的類

    Java中如何自定義一個類加載器加載自己指定的類

    這篇文章主要給大家介紹了關(guān)于Java中如何自定義一個類加載器加載自己指定的類,自定義類加載器允許我們加載特定路徑的類文件,并且可以用于插件系統(tǒng)、熱部署和隔離加載等場景,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-12-12
  • JavaWeb dbutils執(zhí)行sql命令并遍歷結(jié)果集時不能查到內(nèi)容的原因分析

    JavaWeb dbutils執(zhí)行sql命令并遍歷結(jié)果集時不能查到內(nèi)容的原因分析

    這篇文章主要介紹了JavaWeb dbutils執(zhí)行sql命令并遍歷結(jié)果集時不能查到內(nèi)容的原因分析及簡單處理方法,文中給大家介紹了javaweb中dbutils的使用,需要的朋友可以參考下
    2017-12-12
  • SpringBoot Admin 使用指南(推薦)

    SpringBoot Admin 使用指南(推薦)

    這篇文章主要介紹了SpringBoot Admin 使用指南(推薦),Spring Boot Admin 是一個管理和監(jiān)控你的 Spring Boot 應(yīng)用程序的應(yīng)用程序,非常具有實用價值,需要的朋友可以參考下
    2018-01-01
  • Eclipse配置tomcat發(fā)布路徑的問題wtpwebapps解決辦法

    Eclipse配置tomcat發(fā)布路徑的問題wtpwebapps解決辦法

    這篇文章主要介紹了Eclipse配置tomcat發(fā)布路徑的問題wtpwebapps解決辦法的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • 基于strict-origin-when-cross-origin問題的解決

    基于strict-origin-when-cross-origin問題的解決

    這篇文章主要介紹了基于strict-origin-when-cross-origin問題的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Spring Boot整合Redis注解實現(xiàn)增刪改查功能(Redis注解使用)

    Spring Boot整合Redis注解實現(xiàn)增刪改查功能(Redis注解使用)

    文章介紹了如何使用SpringBoot整合Redis注解實現(xiàn)增刪改查功能,包括配置、實體類、Repository、Service及測試示例,通過使用注解如@RedisHash、@Cacheable等,可以簡化操作并提高性能,文章還提供了關(guān)鍵注解的說明和測試驗證方法,感興趣的朋友跟隨小編一起看看吧
    2025-11-11
  • java中字符串替換常用的4種方法

    java中字符串替換常用的4種方法

    在Java中String類提供了許多方便的方法來處理字符串,下面這篇文章主要給大家介紹了關(guān)于java中字符串替換常用的4種方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-03-03
  • Spring MVC溫故而知新系列教程之請求映射RequestMapping注解

    Spring MVC溫故而知新系列教程之請求映射RequestMapping注解

    這篇文章主要介紹了Spring MVC溫故而知新系列教程之請求映射RequestMapping注解的相關(guān)知識,文中給大家介紹了RequestMapping注解提供的幾個屬性及注解說明,感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-05-05
  • 解決IDEA中 Ctrl+ALT+V這個快捷鍵無法使用的情況

    解決IDEA中 Ctrl+ALT+V這個快捷鍵無法使用的情況

    這篇文章主要介紹了解決IDEA中 Ctrl+ALT+V這個快捷鍵無法使用的情況,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • 淺析java移位符的具體使用

    淺析java移位符的具體使用

    這篇文章主要介紹了淺析java移位符的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07

最新評論

弥勒县| 青神县| 五华县| 闸北区| 翁牛特旗| 肇东市| 凤城市| 新蔡县| 通化县| 修文县| 宁德市| 揭西县| 托克逊县| 泽库县| 房山区| 沛县| 湘潭市| 毕节市| 子洲县| 宁化县| 沭阳县| 新民市| 阳泉市| 塘沽区| 清河县| 赤城县| 屏东县| 本溪| 阿巴嘎旗| 古交市| 琼中| 九台市| 七台河市| 石家庄市| 夏河县| 轮台县| 恩施市| 新田县| 寿光市| 如东县| 通州区|