0
人們,我們正在開發一個Java遊戲服務器。首先是JPA/Spring Data/Hibernate,然後我們放棄了(感謝上帝),我們決定直接使用Hibernate。在這一點上,我可以說我們不會改變數據訪問技術,純粹的Hibernate和本地查詢(如果需要的話)。數據訪問抽象與休眠
所以我的問題是關於在這一點上正確的數據抽象。是否有任何意義去與Repository
模式或爲上帝的緣故把它放棄只提供Session
和Transaction
處理提供某種Unit of Work
模式?
- 在
Repository
的情況下,會有太多的實現所需要 - 在
Unit of Work
情況下它自己的方法,我們揭露休眠Session
,但提供了靈活性,並在同一時間封裝Transaction
管理
每種方式的優缺點是什麼?建議的其他策略? DAO
模式可以作爲解決方案,還是直接使用Session
更好?
這就是燈光在設計模式的墳墓中的光芒。謝謝。 – OneMoreVladimir
我無法相信Ayende在這篇文章中做了多少*邪惡*。所有這些開發者都將自己綁定到一個ORM上,只是因爲他們不瞭解一個微不足道的模式。存儲庫抽象持久性作爲一個整體,而不僅僅是一個rdbms。我想沒有人會使用NOSQl數據庫,並且沒有人需要可以使用Redis或MongoDb以及rdbms的應用程序。 – MikeSW
@MikeSW我不同意。如果您轉向nosql解決方案,那麼請創建您的存儲庫。不要因爲可能發生或可能不發生的事情而提前限制自己。你的論點是一種不成熟的優化 –