re: Spring之事件監聽 阮步兵 2010-09-01 21:24
SimpleApplicationEventMultucaster確實采用的是SyncTaskExecutor同步executor,也就是說SimpleApplicationEventMultucaster的listener都是同步執行。當一個listener有多個事件需要處理時,同步執行。
re: Spring之事件監聽 阮步兵 2010-09-01 11:43
@@joe
一個任務里面,比如包括上傳文件和數據處理,如果文件不必立刻相應給客戶,可以通過事件監聽的方式來實現。另外,業務流程中有郵件處理以及日志處理的,都可以在主流程結束后執行,可以選擇事件監聽方式處理。
re: Spring之事件監聽 阮步兵 2010-09-01 11:41
getTaskExecutor().execute(new Runnable() {
public void run() {
listener.onApplicationEvent(event);
}
});
以上是SimpleApplicationEventMultucaster的部分代碼,它選擇的是new Runnable來執行listener