2011-12-12 26 views
2

我正面臨以下問題:我構建的Spring Web應用程序非常適合用戶。每個用戶可能會根據他們的需求量身定製一些邏輯。 我想知道如何最好地實現這樣一個「框架」,可以容易地注入新用戶以及他們的特定邏輯。如何在Spring Web應用程序中最好地實現用戶特定的邏輯?

我想一個的以下解決方案:

  • 提供對所有用戶共同的界面和通過反射調用實際的用戶特定的實現。然後,在添加新用戶時,我只需編寫邏輯,編譯它並將* .class文件放到服務器上。使用某種可配置XML的規則/工作流引擎。我可以建立邏輯前期的各個塊,然後當新用戶展示了我剛纔指定XML(Spring配置)描述的邏輯流

第一個解決方案最初似乎更容易,但需要增加一個新的當更多的工作用戶。第二個需要更多時間來開發規則/工作流機制,但添加新用戶應該更簡單。

您認爲如何?任何其他想法?你知道任何框架/模式可以幫助我完成這項任務嗎?

謝謝, 彼得

回答

0

我寧願第一溶液(界面和編程),但它也有一些畫背:

  • 不是很安全(用戶特定的代碼可以做任何事情)
  • 你需要一些編譯的文件添加到類路徑

我會嘗試用一些腳本語言(Java腳本的考試PLE)。所以特權用戶可以通過前端上傳腳本。腳本可以存儲在數據庫中,因此您可以更新應用程序而不用擔心刪除文件。

而第二件好事是,可以限制腳本可以調用的函數。

+0

Ralph,感謝提示:)幸運的是,用戶特定的代碼並非真正由用戶編寫,而是由我們(基於用戶需求)編寫的,所以安全性並不是真正的問題。 – machinery

相關問題