SpringBoot+Redis使用AOP防止重復(fù)提交的實現(xiàn)
表單重復(fù)提交問題一般采取前端防重復(fù)提交和后端防重復(fù)提交方案,不過應(yīng)該要兩種方式都結(jié)合在一起才行,這里來說說使用AOP進(jìn)行后端防重提交。
一,定義防重提交注解
我在里面定義了一個鎖住接口時間的方法,默認(rèn)值為5,這里為什么要定義這么個方法呢,因為很多接口的處理時間不一樣,所以這樣靈活一點?! ?/p>
二,定義一個切面
我的方案是采用Redis來緩存提交接口的唯一標(biāo)識,然后設(shè)置過期時間,唯一標(biāo)識我才用接口的URL和用戶的token組合在一起就能達(dá)到唯一,用戶每發(fā)起第一次添加請求,會經(jīng)過界面,在切面獲取信息后組裝起來存入Redis,當(dāng)用戶后續(xù)發(fā)起請求時,首先判斷Redis中是否緩存了這個key,如果緩存了,則證明已經(jīng)提交,于是反饋給前端,如果不存在,證明沒有提交,則存入Redis。
三,方法上加上注解
到此這篇關(guān)于SpringBoot+Redis使用AOP防止重復(fù)提交的實現(xiàn)的文章就介紹到這了,更多相關(guān)SpringBoot Redis AOP防止重復(fù)提交內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- springboot 防止重復(fù)請求防止重復(fù)點擊的操作
- SpringBoot?使用AOP?+?Redis?防止表單重復(fù)提交的方法
- SpringBoot整合redis+Aop防止重復(fù)提交的實現(xiàn)
- SpringBoot攔截器實現(xiàn)項目防止接口重復(fù)提交
- SpringBoot中防止接口重復(fù)提交的有效方法
- SpringBoot利用Redis實現(xiàn)防止訂單重復(fù)提交的解決方案
- SpringBoot整合ShedLock解決定時任務(wù)防止重復(fù)執(zhí)行的問題
- springboot基于注解實現(xiàn)去重表消息防止重復(fù)消費
相關(guān)文章
JAVA參數(shù)傳遞方式實例淺析【按值傳遞與引用傳遞區(qū)別】
這篇文章主要介紹了JAVA參數(shù)傳遞方式,結(jié)合實例形式分析了java按值傳遞與引用傳遞區(qū)別及相關(guān)操作注意事項,需要的朋友可以參考下2020-05-05