2012-02-29 105 views
2

編程新手。我創建了一個Spring MVC Web應用程序。 它有前端JSP,Spring MVC作爲中間件組件,數據部分請求web服務來獲取數據。自應用程序本身以來,中間件組件沒有太多的業務邏輯,只是用於提取數據。我的應用程序是否缺少應用程序層?

我的朋友說我的應用程序缺少應用程序層。它是否正確? 目前我在Tomcat中部署我的應用程序,DB是Teradata。 我沒有使用任何應用程序服務器(僅限Web服務器)。 那麼這是否意味着我的應用程序缺少應用程序層?請詳細說明。

回答

1

如果你的朋友正在考慮一個三層應用程序,那麼你的網絡層沒有,或者實際上你已經組合了Web和App層。

0

它取決於您的控制器中實施的邏輯。通常JSP是控制器是視圖層的一部分,業務邏輯在業務層中,持久層基本上是一個數據庫。這被稱爲三層應用程序。

控制器中的邏輯應該只關心數據如何呈現給用戶,不應該對數據本身進行任何操作。然後你會有乾淨的視圖層。

將所有業務邏輯放在web服務的端點沒有問題。其實我會說這很常見。

+0

我認爲你的評論混淆了層與層。兩者有區別。雖然層級指的是物理分離,但層級更像MVC中的邏輯分離。請參閱http://stackoverflow.com/questions/120438/whats-the-difference-between-layers-and-tiers – Raghav 2012-03-20 16:04:34