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

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

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

1.AspectJ簡介

  • AspectJ是一個基于Java語言的AOP框架
  • Spring2.0以后新增了對AspectJ切點表達式支持
  • @AspectJ 是AspectJ1.5新增功能,通過JDK5注解技術,允許直接在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)接口的目標對象中的方法(了解)

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

args:

匹配參數(shù)格式符合標準的方法(了解)

args(int,int)

bean(id) 

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

bean('userServiceId')

3.通知類型

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

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

相關文章

  • java如何從地址串中解析提取省市區(qū)(完美匹配中國所有地址)

    java如何從地址串中解析提取省市區(qū)(完美匹配中國所有地址)

    這篇文章主要給大家介紹了關于java如何從地址串中解析提取省市區(qū)的相關資料,通過這個方法可以完美匹配中國所有地址,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-07-07
  • springboot日期格式化及時差問題分析

    springboot日期格式化及時差問題分析

    這篇文章主要介紹了springboot日期格式化,時差問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • Java ObjectMapper使用詳解

    Java ObjectMapper使用詳解

    ObjectMapper類是Jackson的主要類,它可以幫助我們快速的進行各個類型和Json類型的相互轉(zhuǎn)換,本文給大家介紹Java ObjectMapper的相關知識,感興趣的朋友跟隨小編一起看看吧
    2024-07-07
  • 通過Java實現(xiàn)中文分詞與文本關鍵詞提取

    通過Java實現(xiàn)中文分詞與文本關鍵詞提取

    這篇文章主要為大家詳細介紹了如何利用Java實現(xiàn)中文分詞以及文本關鍵詞提取功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習學習
    2023-06-06
  • SpringBoot部署在Weblogic的操作步驟

    SpringBoot部署在Weblogic的操作步驟

    這篇文章主要介紹了SpringBoot部署在Weblogic的操作步驟,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • idea2019.2安裝MybatisCodeHelper插件的超詳細教程

    idea2019.2安裝MybatisCodeHelper插件的超詳細教程

    這篇文章主要介紹了idea2019.2安裝MybatisCodeHelper插件的教程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • 記錄一次connection reset 錯誤的解決全過程

    記錄一次connection reset 錯誤的解決全過程

    這篇文章主要介紹了記錄一次connection reset 錯誤的解決全過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • 如何在Java中實現(xiàn)一個散列表

    如何在Java中實現(xiàn)一個散列表

    這篇文章主要介紹了如何在Java中實現(xiàn)一個散列表,建一個HashMap,以String類型為Key,Int類型為Value,下文具體的操作過程需要的小伙伴可以參考一下
    2022-04-04
  • 解決SpringBoot整合RocketMQ遇到的坑

    解決SpringBoot整合RocketMQ遇到的坑

    這篇文章主要介紹了解決SpringBoot整合RocketMQ遇到的坑,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Spring Boot如何使用Undertow代替Tomcat

    Spring Boot如何使用Undertow代替Tomcat

    這篇文章主要介紹了Spring Boot如何使用Undertow代替Tomcat,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09

最新評論