2009-06-04 132 views
1

該設置是一個典型的MVC J2EE應用程序,帶有用於數據訪問的DAO。在休眠中加載類型實體

有許多類型實體,例如Product bean有一個ProductType成員bean,兩者都保留。

當我持久化Product bean時,我想用ProductType信息填充它。我有狀態碼,但是是否必須到數據庫檢索整個ProductType bean,才能使用類型數據填充產品?有沒有處理這種類型信息情況的模式?

我不希望每個類型都有單獨的DAO,但是如果我必須明確地拉它們(例如不是通過Product隱式地),那麼我將需要一個DAO。

選項?謝謝!

回答

1

ProductTypes是動態的嗎?也就是說,你是否希望在未來增加更多的類型?如果是這種情況,那麼無論如何你都需要一個類型爲DAO的DAO。

據我所知,您將不得不從數據庫中加載ProductType實例,將其添加到您希望保留的產品,然後保存該產品。

如果類型的數量不是動態的,那麼你可以考慮一個枚舉,而不是將它們持久化到你的數據庫。但是,根據我的經驗,類型往往是動態的。即使你今天只能想到兩種可能的產品類型,明天的管理層也會想要另一種類型的產品。

所以我建議你爲ProductType編寫DAO。

+0

是的類型足夠動態不使用枚舉。 這是一個可惜的創造額外的道數,但我想這是不可避免的。 謝謝。 – bowsie 2009-06-04 15:04:14