定義註解:
@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...