我正在創建一個應用程序,我正在使用MVC模式。爲此,我正在考慮將我的視圖作爲jsps,控制器作爲servlet和模型作爲DAO對象。我懷疑我將DAO對象視爲模型是對還是錯?什麼是MVC模式的模型
0
A
回答
2
MVC中的模型就是業務邏輯所在的地方。
看着the sun Java EE pattern definitions我們看到DAO封裝了持久性機制並被業務對象使用。因此,我不會將DAO視爲具有任何商業邏輯。
在簡單系統中,一些數據庫表或數據庫(存儲過程,參照完整性檢查,觸發器)中實現業務邏輯的那些表達式,DAO實際上是業務邏輯前面的一個表面,所以它們幾乎看起來像模型。因此,在一些介紹性資料中,您可能會將DAO看作模型的唯一Java表達式。
當我們選擇在Java中實現業務邏輯時,它將位於DAO之上的一層,例如使用DAO的Session Beans,在我看來,它是Session Bean或等效模型。
所以問問自己:業務邏輯在哪裏?這就是模型真正的地方。
4
模型不是DAO。這是一個層,它包含了所有的域的邏輯,並且從兩種類型的元素大多組成,具有下列職責:
- 業務邏輯
- 數據訪問(通常作爲DataMapper實現)
這個想法是,商業邏輯不應該與存儲機制聯繫在一起。在創建發票時,如果數據來自SQL數據庫,MSWord文檔,遠程REST API或只是模擬數據,則該域對象不應該在意。
您可能會覺得這篇文章有趣且相關:GUI Architectures。
相關問題
- 1. 什麼是MVC模式中的「模型」?
- 2. 什麼是正確的MVC模式?
- 3. 使用aspnet mvc的模式是什麼?
- 4. 這是什麼樣的web MVC模式?
- 5. MVC模式中的模型和實體有什麼區別?
- 6. 什麼應該擁有MVC模式中的模型?
- 7. 星型模式的缺點是什麼?
- 8. 什麼是ASP.NET MVC中自定義模板類型的正確設計模式?
- 9. 設計模式 - 這是什麼模式?
- 10. Backbone.js的:什麼是 「模式」 裏面的 「渲染:函數(模型){...}」?
- 11. 什麼是使用域模型和視圖模型(也稱爲AutoMapper)與MVC的設計模式名稱
- 12. 數據模型和服務模型之間的繼承模式是什麼?
- 13. MSChart模板xml的模式是什麼?
- 14. 爲什麼是代理模式的結構模式,爲什麼是狀態模式的行爲模式?
- 15. ASP.NET MVC - 什麼是*背景模式象徵什麼?
- 16. 模型 - 視圖 - 控制器(MVC)優於模型 - 視圖的優點是什麼?
- 17. 管理模型實例的好主幹模式是什麼?
- 18. 在PHP模型驗證的常見模式是什麼?
- 19. 什麼是「組件模型」
- 20. 什麼是MvvM模型
- 21. 什麼是「盒子模型?」
- 22. 什麼是貧血模型?
- 23. MVC模型1和模型2有什麼區別?
- 24. asp.net mvc - 爲什麼模型爲null?
- 25. ASPNET MVC - 什麼進入模型?
- 26. 什麼是爲什麼使用會話模式:SQL Server模式?
- 27. 什麼是最佳實踐,實體框架模型或MVC模型?
- 28. 什麼是「空」模式?
- 29. 什麼是json超模式?
- 30. 什麼是怪癖模式?