2013-04-05 123 views

回答

14

這確實取決於你如何編碼你的域名。

一般來說(在Java中)我更喜歡創建一組單獨的JPA註釋的DTO以使用持久性。這樣的DTO將匹配數據庫表,將自定義庫中使用的

  • 將暴露給客戶的語義API
  • 將運行查詢針對此類的DTO
  • 將利用工廠初始化域對象返回客戶端

該方法使域模型與數據庫模式真正解耦,以便您可以獨立進化。這種方法的缺點是你有更多的代碼可以編寫,但是我發現這樣的代碼編寫維護起來非常簡單和便宜。

在實體上使用JPA註釋是一種非常常見的方法,但隨着您的域模型的發展和變得越來越複雜,我自己的經驗是您必須面對遠比其他解決方案昂貴的問題。

+1

你有一個公共項目與執行? – heat 2015-02-17 04:05:51

+0

使用Hibernate作爲JPA提供程序允許您使用XML映射域對象。這可以幫助您將域對象從JPA註釋中清除乾淨。 – 2015-07-31 12:32:41

+0

這正是我所做的。 有道理;) – Mik378 2017-09-23 19:48:22

相關問題