觀察者模型
為了對**模組進行解耦
觀察者
@component
public
class
orderstatusobserveable
implements
initializingbean
public
synchronized
void
addobserver(orderstatusobserver monitor)
if (!observers.contains(monitor))
}public
synchronized
void
deleteobserver(orderstatusobserver monitor)
if (observers.isempty())
observers.remove(monitor);
}//非同步執行
@async
public
synchronized
void
notifyobservers(orderstatusupdater updater)
for (orderstatusobserver observer : observers) catch (exception e) }}
@override
public
synchronized
void
afterpropertiesset() throws exception
for (string name : beans.keyset())
}}
***
public
inte***ce orderstatusobserver
物件
public
class orderstatusupdater
public long getstoreid()
public
void
setstoreid(long storeid)
public long getorderid()
public
void
setorderid(long orderid)
public orderstatus getnewstatus()
public
void
setnewstatus(orderstatus newstatus)
}
***執行器
@component
public
class
orderupdateobserver catch (exception e)
return effectrow;
}}
實現***
@component
public
class
distributionalldeal
implements
orderstatusobserver
}
希望能幫到大家。大家如果有興趣可以來我的**看看: 觀察者模式(推模型 拉模型)
觀察者模式 observer pattern 當乙個物件被修改時,會自動通知它的依賴物件 現在我們是新聞社,要向所有新聞訂閱者推送新聞。那麼該如何實現呢?經過思考我們不難發現一家新聞社一般對應的是多個新聞訂閱者。那麼我們先從新聞社開始入手,想一想新聞社要具備哪些基本功能呢?1.新聞,2.有哪些訂閱者...
spring中的觀察者模式
下列描述了spring提供的內建事件 requesthandledevent 乙個特定的web事件告訴所有能處理http請求的bean 這個事件是在請求完成後發布的。這個事件只適用於使用 spring 的 dispatcherservlet 的web應用程式。回到頂部 例項 private proc...
python觀察者模式 python 觀察者模式
python 觀察者模式 前言e 寫的倉促就不截uml類圖了,書本chapter10,p313能看到圖 一旦觀察的主題有更新,就會通知到觀察者們,下面的例子是最簡單的乙個觀察者範例,假設這是一群投機分子密切關注 軍 火 倉庫的產品與數量變動 class inventory def init self...