2009-10-15 101 views
1

我有一個實體類和一個實體DAO類。我應該在哪裏創建實體對象?

是否應該由DAO類負責創建實體類的實例,或者應該有一個實體創建者/管理者類使用DAO類僅從數據庫獲取數據以創建實體類。

感謝,

克里斯

回答

1

應該是DAO加載從數據存儲持久對象的責任,並返回一個瞬態的實例。爲什麼在這裏添加另一個抽象層?

對於創建新的實體,可能涉及工廠(或彙編程序)。但是,通常這隻有在實體創建足夠複雜時纔是合理的。在大多數情況下,一個簡單的構造函數很適合該法案。

0

我通常讓DAO知道實體組合並返回一個完全水合的實體。爲什麼?因爲DAO通常只用於支持該實體。如果其角色不一定支持該實體或相關實體,那麼您可能需要查看中間層。

0

我假設你在談論持久化實體和管理持久化的東西。在我看來,使用工廠來簡單創建POJO沒有任何價值。使用常規方法,然後使用DAOEntityManager,無論如何處理持久性。我認爲關鍵的一點是不要讓持久性策略/實現流失超過您的業務API。

相關問題