2012-06-04 63 views
1

我完成了一個新的MVC Web應用程序,我的老闆讓我爲新的客戶創建一個新版本。相同的Web應用程序,但不同的CSS和兩個新的模塊(對於模塊,我的意思是用戶用來與數據庫交互的新頁面)。這不是什麼大事,而且很容易做到,只需在Eclipse中複製項目並對其進行修改即可。兩天工作和項目完成。幹得好,一切都開心,但不是我。Spring MVC和動態模塊部署

我在想wordpress,它是真正可定製的,只是創建一個新的模板和插件並激活它。我想做類似的工作,以減少新版本部署和代碼維護。我的問題是,我怎麼能做一些類似於Spring的東西?或者更好,是否可以創建一個新模塊並將其部署到Web應用程序中? Spring是MVC Spring應用程序的正確選項嗎?

感謝,
安德烈

回答

0

我不認爲你的做法是正確的。您需要與您的經理討論這種情況是否可能重複。因爲對我來說它看起來可能。

讓我們來想象一個場景:您有一些應用程序的副本,並在它們之間進行了一些小的增強或更改。一個月後,一個客戶報告一個真正討厭的bug,並且必須在每個應用程序實例中修復。想象你的痛苦。

你爲什麼不考慮多租戶?

  • 實現白色標籤,以便根據客戶的不同,您的應用程序可以獲得不同的外觀;
  • 擴展後端,以便客戶永遠不會看到彼此的數據
  • 實現可配置功能,以便一位客戶看不到您的老闆出售給另一位客戶的擴展功能。當他賣掉它們時 - 這將是在數據庫/配置中切換幾個標誌的問題。

不想支持多租戶或產品物理部署在不同的(客戶)服務器上嗎?沒關係!如果發現錯誤,則修復一次,然後將jar文件重新部署到所有受影響的系統。

當然,以上是不是兩天的工作,但在這條路上,這種方法可以節省更多。

至於你的問題,Spring允許你通過可改變的樣式和佈局來定製它的外觀。我建議你用Spring Roo創建一個示例Web應用程序,以瞭解它是如何完成的。但是,如果我是你,我至少會努力在這些項目之間建立一個共享的代碼庫。