JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Software Design  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友    訂閱主題
reply to topicthreaded modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 Core J2EE Patterns - Service To Worker [精華]
worookie

Small Ship

版主

發文: 2092
積分: 21
於 2003-10-08 01:55 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list



reply to postreply to post
作者 Re:Core J2EE Patterns - Service To Worker [Re:worookie]
worookie

Small Ship

版主

發文: 2092
積分: 21
於 2003-10-08 01:55 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list



reply to postreply to post
作者 Re:Core J2EE Patterns - Service To Worker [Re:worookie]
worookie

Small Ship

版主

發文: 2092
積分: 21
於 2003-10-08 02:00 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
"Service To Worker" 和 "Dispatcher View" 長的很像, 有人看出來有什麼不同嗎?

reply to postreply to post
作者 Re:Core J2EE Patterns - Service To Worker [Re:worookie]
im1000



版主

發文: 149
積分: 7
於 2003-10-08 02:16 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
Service To Worker vs Dispatcher View 的差異是

Service To Worker 是會用到後面的 Business 邏輯
Dispatcher View 只是直接到某個 jsp

這要拿 Sun WAF ( Web Application Framework ) 來說 , 蠻類似 struts 的

當我新增/刪除/修改的時候, 是採用 Service To Worker
當我只是取得資料的時候, 是採用 Dispatcher View

不是已經到 jsp view 了嗎
那麼最後的 viewHelper 是誰來呼叫呢

是 taglib ....

在 struts 中, 可以想成 Action 是否有呼叫 Business Delegate
或者是直接 return ActionForward ...


reply to postreply to post
作者 Re:Core J2EE Patterns - Service To Worker [Re:im1000]
metavige

麥塔.米奇

版主

發文: 2133
積分: 10
於 2003-10-08 03:15 user profilesend a private message to usersend email to metavigereply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
我記得
Service to Work 重點是在 "Service"
所以在 View 出現之前
其實資料跟 Business Logic 已經處理完畢了
在 View 的部分, 只負責取得 DataObject 來顯示

而在 Dispatcher View 重點是在 "View"
所以 FrontController 處理完畢之後
其實只是將處理做 disptch 的動作
實際上的 Business Logic 跟取資料的部分
都會在 View 裡面呼叫 DataObject 的時候才做的


reply to postreply to post
請各位新手參考 論壇規範Java 新手 FAQ
作者 Re:Core J2EE Patterns - Service To Worker [Re:worookie]
fredwang





發文: 13
積分: 2
於 2005-07-08 00:28 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
Service to Worker是以控制器(application controller)為中心的架構,Dispatcher View是以View為中心的架構, 它的商業處理是到View的處理時才被執行(例如在JSP中的scriptlet or tag library)

Service to Worker執行步驟 :
1.Front Controller接收需求(request), 並處理與網路協定相關的元素(如HttpServletRequest..)然後產生Context Object, 交給Application Controller, 並委派Application Controller進行Action與View的管理。

2.Application Controller扮演Command Handler將request中的邏輯名稱(例如http://some.server.com/Controller?action=login中的"login")找到對應的Command(例如LoginCmd), 並呼叫(invoke)這個Command

3.特定Command用來呼叫特定的商業服務來產生展示資料模型(Presentation Model, 例如儲存在Session內的資料)。

4.然後Application Controller再將控制權轉交給特定的View

5.這個View透過View Helper將展示資料模型內的資料轉換成View所需的內容。這個View也可能是個合成的View(Composite View)

在此要注意的是, Service to Worker商業邏輯在控制權轉交給View前就完成了, 而Dispatch View則在制權轉交給View之後才執行這些商業邏輯。

其他請參考 :http://fredwang.blogspot.com/2005/07/j2ee-design-pattern-service-to-worker.html


fredwang edited on 2005-07-08 00:31
reply to postreply to post
fredwang.blogspot.com
-------------- Simple Living, Noble Thinking -------------

» JWorld@TW »  Software Design

reply to topicthreaded modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8