利用切面,乙個註解實現測試環境不執行定時任務

2021-10-22 14:00:07 字數 1295 閱讀 4416

定義註解:

@target

(elementtype.method)

@retention

(retentionpolicy.runtime)

@documented

public @inte***ce

timedtaskcontrol

定義切面實現:

@aspect

@component

public

class

timedtaskcontrolaspect")

private integer port;

/** * 配置織入點

*/@pointcut

("@annotation(com.hrtxn.ringtone.freemark.config.annotation.timedtaskcontrol)"

)public

void

timedtaskcontrolpointcut()

@around

("timedtaskcontrolpointcut()"

)public object doaround

(proceedingjoinpoint point)

throws throwable

// 執行當前任務

return point.

proceed()

;}/** * 是否存在註解,如果存在就獲取

*/private timedtaskcontrol getannotationlog

(joinpoint joinpoint)

return null;

}}

使用:

@scheduled

(cron =

"0 30 3 ? * *"

)@timedtaskcontrol

public

void

refreshmcardmerchants()

原因:

專案上線,再測試的時候有很多定時任務,在測試環境裡這些定時任務根本不需要執行

思想:

本來用的前置通知,可是不能優雅的實現條件不滿足放棄執行, 只能丟擲異常才能停止當前任務

所以: 這裡使用環繞通知,可以很好的實現條件不滿足,放棄執行

乙個測試環境

這是一次inte ce遇到的,面試人員找來乙個實際填寫的表單,要在domino中按照這個樣式做個表單,然後能夠融合到它們的開發系統中。做表單不是難事,這裡就不說了。但用面試人員告知的網域名稱test.cn訪問看這個預覽效果卻沒有這個也頁面。很奇怪,用瀏覽器用ip位址訪問預覽效果的時候卻提示輸入使用者...

利用CoreAnimation實現乙個時間的進度條

那麼接下來就是如何用coreanimation實現乙個進度條控制項了。首先呢,讓我們建立乙個繼承自cashapelayer的wkprogressbarlayer。wkprogressbarlayer預設自身的bounds就是整個進度條的大小。inte ce wkprogressbarlayer ca...

利用CoreAnimation實現乙個時間的進度條

那麼接下來就是如何用coreanimation實現乙個進度條控制項了。首先呢,讓我們建立乙個繼承自cashapelayer的wkprogressbarlayer。wkprogressbarlayer預設自身的bounds就是整個進度條的大小。inte ce wkprogressbarlayer ca...