国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

[Java干貨系列]Springboot項(xiàng)目腳手架手把手教程(6)SpringBoot項(xiàng)目AOP統(tǒng)一打印

2023-08-28 15:35 作者:搬磚后端研發(fā)  | 我要投稿

背景

在實(shí)際Web項(xiàng)目中,我們通常都會(huì)在比如請求進(jìn)來時(shí)或者返回后能夠記錄日志方便日后排查問題等。甚至有時(shí)候我們需要在內(nèi)部的某些方法邏輯執(zhí)行前、執(zhí)行后做一些操作,比如:對參數(shù)進(jìn)行解密,對所有的返回值進(jìn)行加密等。這些與業(yè)務(wù)無關(guān)的操作,傳統(tǒng)做法就是在每個(gè)期望的地方都去手動(dòng)記錄日志,但有了AOP的思想和實(shí)現(xiàn),其實(shí)沒有必要在每個(gè)方法中都寫一遍,這里我們有兩種方式實(shí)現(xiàn),一是自定義個(gè)注解和切面方法來實(shí)現(xiàn),可以適用任何你希望的方法上;二是針對controller的方法可以使用 springmvc 中的@ControllerAdvice 和 RequestBodyAdvice、ResponseBodyAdvice 來對請求前后進(jìn)行處理,本質(zhì)上也是 aop 的思想

自定義方式

自定義注解和切面方法,在方法執(zhí)行開始之前和結(jié)束之后,打印出參、入?yún)⑷罩?/p>

RestControllerAdvice方式

RequestBodyAdvice:會(huì)對被@RquestBody和@PostMapping(@PutMapping等也生效)注解的請求進(jìn)行增強(qiáng)處理,比如所有請求的數(shù)據(jù)都加密之后放在 body 中,在到達(dá) controller 的方法之前,需要先進(jìn)行解密,那么就可以通過 RequestBodyAdvice 來進(jìn)行統(tǒng)一的解密處理,無需在 controller 方法中去做這些通用的操作。

ResponseBodyAdvice:類似RequestBodyAdvice,對 Controller 中@ResponseBody 類型返回值進(jìn)行增強(qiáng)處理,也就是說可以攔截@ResponseBody 類型的返回值,進(jìn)行再次處理,比如加密、日志等操作。


教程

自定義方式

1.引入依賴

2.定義切點(diǎn)

3.編寫切面方法

4.編寫controller

5.演示

RestControllerAdvice方式

1.日志依賴引入,這里我們?nèi)罩究蚣芫秃唵问褂胹lf4j和logback

2.編寫Request請求日志代碼

3.編寫response響應(yīng)日志代碼

4.編寫controller

5.演示


[Java干貨系列]Springboot項(xiàng)目腳手架手把手教程(6)SpringBoot項(xiàng)目AOP統(tǒng)一打印的評論 (共 條)

分享到微博請遵守國家法律
鹤岗市| 宁武县| 额敏县| 囊谦县| 中卫市| 宝山区| 三都| 贡觉县| 黔江区| 习水县| 黄平县| 潞西市| 临沧市| 江安县| 江油市| 江津市| 普宁市| 城市| 长阳| 色达县| 长沙市| 社旗县| 广德县| 儋州市| 新泰市| 尤溪县| 安化县| 嘉定区| 灵山县| 桐庐县| 岳阳县| 伊吾县| 无棣县| 偏关县| 漳州市| 临海市| 鸡西市| 大城县| 咸阳市| 响水县| 武清区|