日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring AOP编程-aspectJ通知类型-6大通知

發布時間:2025/1/21 javascript 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring AOP编程-aspectJ通知类型-6大通知 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、創建目標類(target)

public interface IUserService {public void add();public void update();public String del();public void search(); } public class UserServiceImpl implements IUserService {@Overridepublic void add() {System.out.println("userService add...");}@Overridepublic void update() {System.out.println("userService update...");}@Overridepublic String del() {System.out.println(10 / 0); // 一定會拋出異常System.out.println("userService del...");return "hello world";}@Overridepublic void search() {System.out.println("userService search...");}}

2、創建通知:在aspectj中它的增強可以不實現任何接口,只需要定義出增強功能(方法)

//advice 通知 public class UserServiceHelper {// 前置通知public void before(JoinPoint jp) {System.out.println("攔截的目標類:" + jp.getSignature().getDeclaringTypeName());System.out.println("攔截的方法名稱:" + jp.getSignature().getName());System.out.println("前置通知");}// 前置通知public void before1() {System.out.println("前置通知");}// 后置通知public void afterReturning(JoinPoint jp, Object val) {System.out.println("目標方法返回值:" + val);System.out.println("后置通知");}// 環繞通知public Object around(ProceedingJoinPoint pjp) throws Throwable {System.out.println("環繞前....");Object value = pjp.proceed(); // 執行目標行為System.out.println("環繞后....");return value;}// 異常拋出通知public void afterThrowing(JoinPoint jp,Throwable ex) {System.out.println("發現了異常。。。。"+ex);}// 最終通知public void after(JoinPoint jp) {System.out.println(jp.getSignature().getName());System.out.println("最終通知");} }

3、在spring的配置文件中配置信息
< aop:config>下的< aop:aspect>是aspectJ框架用來聲明切面的。
異常通知:目標行為只有拋出了異常后才會執行這個增強方法
最終通知:無論是否有異常,最終通知都會執行.

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"><!-- target --><bean id="userService" class="cn.nwtxxb.aspectj.UserServiceImpl"/><!-- advice--><bean id="userServiceAdvice" class="cn.nwtxxb.aspectj.UserServiceHelper"/><!-- 使用aop:config來聲明 使用aop:aspect來配置切面 --><aop:config proxy-target-class="true"><aop:aspect ref="userServiceAdvice"><aop:pointcut expression="execution(* *.del(..))" id="delPointCut"/><aop:before method="before" pointcut-ref="delPointCut"/><aop:before method="before1" pointcut-ref="delPointCut"/><aop:after-returning method="afterReturning" pointcut-ref="delPointCut" returning="val"/><aop:around method="around" pointcut-ref="delPointCut"/><aop:after-throwing method="afterThrowing" pointcut-ref="delPointCut" throwing="ex"/><aop:after method="after" pointcut-ref="delPointCut"/></aop:aspect></aop:config> </beans>

aspectJ通知上的參數介紹

在前置通知上可以添加JoinPoint參數,通過它可以獲取目標相關的信息。
使用前置通知可以完成日志記錄,權限控制.
在后置通知上添加的第二個參數val可以獲取目標方法的返回值.同時需要在配置文件中配置。
環繞通知上的參數。環繞通知是我們開發中應用最多的,可以完成日志操作,權限操作,性能監控,事務管理。
拋出異常通知上的第二個參數Throwable它是用于接收拋出的異常
注意:需要在配置文件中聲明。
最終通知上的參數:可以使用最終通知完成資源釋放。

總結

以上是生活随笔為你收集整理的Spring AOP编程-aspectJ通知类型-6大通知的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天天干天天操天天插 | 日韩va视频 | 日本电影大尺度免费观看 | 少妇精品久久久一区二区三区 | 91宅男| 97国产精品| 国产精品福利在线播放 | 激情超碰 | 亚洲综合图片区 | 一区二区三区www | 亚洲成人一区二区在线观看 | 亚洲色图制服诱惑 | 中文字幕久久久 | 午夜精品久久久久久久久 | 一级免费av| 最近中文字幕在线免费观看 | 小宝贝真紧h军人h | 久热精品在线视频 | 欧美色图小说 | 91精品在线视频观看 | 99mav| 顶弄h校园1v1 | 精品无码久久久久久久久久 | xxxx在线视频 | 国产剧情精品 | 乱短篇艳辣500篇h文最新章节 | 天天草天天 | 伊人久综合 | 香蕉视频在线观看www | 欧美xx孕妇 | 亚洲欧美另类一区 | 男人舔女人下部高潮全视频 | 青青草草视频 | 亚洲欧美一区二区三区四区 | 91精产品一区观看 | 国产乱码精品一区二区三区忘忧草 | 在线看片一区二区 | 国产福利一区二区三区在线观看 | 国产老熟妇精品观看 | 91蜜桃视频 | 国产福利小视频在线观看 | 国内av自拍 | 免费伊人网 | 丝袜一区二区三区四区 | 亚洲熟伦熟女新五十路熟妇 | 国产重口老太伦 | 一区二区免费 | 日韩久久网 | 天天爽天天 | 青青草福利 | 亚洲精品在线一区二区 | 亚洲激情精品 | 日本一区二区在线免费观看 | 欧美精品一区二区三区在线播放 | 女人扒开屁股让男人桶 | 中文字幕一区二区视频 | 天堂аⅴ在线最新版在线 | 亚洲国产精品自拍 | 成人福利视频导航 | 成人午夜av在线 | 91丨九色丨黑人外教 | 小视频在线免费观看 | 天天干视频 | 国产精品视频入口 | 午夜影院免费版 | 在线亚洲自拍 | 光溜溜视频素材大全美女 | 午夜日韩在线观看 | 妖精视频在线观看免费 | 欧美乱码精品一区二区三区 | www视频在线观看 | 国产福利二区 | 国产一级大片 | 干爹你真棒插曲mv在线观看 | 蜜乳av懂色av粉嫩av | 日本不卡一区在线观看 | 99免费看 | 九草在线 | 在线观看黄色av网站 | 一级日批片 | 国产原创av在线 | 亚洲色图视频网站 | 好姑娘在线观看高清完整版电影 | 91亚洲精品久久久久久久久久久久 | 日韩久久久精品 | 日韩电影一区二区三区四区 | 亚洲福利视频一区二区三区 | 国产aaa| 婷婷六月激情 | 蜜桃视频色 | 永久免费精品影视网站 | 深爱婷婷| 国产欧美一区二区三区白浆喷水 | 337p日本欧洲亚洲鲁鲁 | 青草青青视频 | 91亚洲国产精品 | 国产精品91久久久 | 国产在线精品福利 | 五月婷婷在线视频 |