採用facade模式,對於客戶端來說採用delegate透過facade的遠端介面進行遠端方法呼叫,而facade後面有controll session bean和entity bean,業務邏輯放在facade中還是放在controll session bean中
比如一個系統有6張表,其中有一個操作牽涉到4張表的操作,首先檢驗1表是否有記錄如果無記錄則對2表加記錄,否則對4表進行操作 3.對3表進行update記錄,這種業務邏輯的實現放在facade中還是後端的control session bean中,
我是這樣做的,共有6個control session bean,每個session bean實現entity bean中的相應功能,例如:
findById(String id) 對應於在表1中查詢一個記錄,放在session bean 1中
addById2(String id)對應於在表2中插入一條記錄,在session bean 2中
addById4(String id)對應於在表4中插入一條記錄,在session bean 4中
deleById(String id)對應於在表3中刪除一條記錄,在session bean3中
具體的業條邏輯 findBy(id)->addById2(id)->deleById(id)
->addById4(id)
組成一個process(id)方法,放在facade中,這樣劃分合理嗎?