2013-06-11 48 views
2

在一些實現中,我已經看到jsp使用java bean類作爲中間存儲/數據訪問層來從jcr獲取數據。從jsp訪問jcr中的數據

這是爲什麼,因爲jsp可以通過jcr api直接訪問jcr。

問題分離?內存緩存的數據?

只是想知道爲什麼這樣的模式存在,當jcr api寫在第一位。

回答

3

在較小的安裝中使用scriptlet可能不是那麼有問題,但是在大型多站點項目中。

分離UI代碼和模型/業務邏輯可以簡化可維護性並允許在項目中重用代碼。另外改變佈局變得更容易。通常這種分離是通過使用組件bean來訪問JCR repo並提供數據並通過使用JSP來完成的。

想象一下,您的客戶需要在多個站點進行大量的UI更改。更改與scriptlet和UI代碼混合的JSP更加困難,特別是如果您有很多JSP。

從OO的角度來看,使用JSP和scriptlets可以防止使用繼承和組合。 Scriptlet的不能被抽象化。 我經歷過,java beans更容易調試,然後scriptlets,尤其是在發生異常和java bean的情況下,可以更容易地進行單元測試。