2011-03-11 19 views
1

我開發有兩個主要的「零件」給它的應用程序...什麼是組織Spring 3 Web應用程序及其組件的理想方式?

  1. 面向公衆的網站
  2. 用於移動應用的基於REST的API。

我正在使用Spring Tool Suite作爲IDE開發Spring 3應用程序。起初我認爲這個API將和公共網站一樣是同一個項目的一部分。但後來我嘗試將基本身份驗證與基於表單的身份驗證混合使用,因爲公共網站的事情開始讓Spring Security感到困惑。

所以我認爲最好將API開發爲一個單獨的項目,並在API和網站項目之間共享我的域對象,服務和DAO。我的問題現在是:

  1. 這是一個愚蠢的想法?
  2. 應該使用共享域對象,服務等創建一個'核心'項目?
  3. 我應該使用Maven並添加'core'項目作爲API和網站項目的依賴項嗎?
  4. 有沒有更好的方法來做到這一切?

回答

1

這很大程度上取決於您的需求。我目前正在研究一個相當大的GWT應用程序(使用SpringSource Toolsuite和Maven)。

我們廣泛使用Maven模塊和配置文件。它有時可能會有點混亂,但它確實強制分離,我認爲這通常是一件好事。

我想說,如果您的前端和後端代碼將完全分開,將它們創建爲單獨的模塊可能不是一個壞主意。然後,您可以爲每個項目設置您的Spring Security,如您所願。

因此,總而言之,我會說模塊化是一個好方法,但請調查Maven modules,因爲這可能會幫助您解決依賴關係問題。

0

我有同樣的規格,你

  1. 面向公衆的網站
  2. 用於移動應用的基於REST的API。

我必須爲基於JSON和數據庫依賴關係的RESTFULL服務分離一個Web項目。對於我的前端項目,我沒有依賴於數據庫,但只有我的restfull服務。

使用此策略,可以爲web項目和移動應用程序使用相同的代碼庫。

相關問題