存储库模式的替代方案?

时间:2011-02-12 19:51:39

标签: repository data-access-layer repository-pattern

人们对我大吼大叫,我应该总是使用我已经做了很长一段时间的存储库模式......现在我想知道是否有任何不错的选择模式根本?

1 个答案:

答案 0 :(得分:3)

那里有数据访问对象模式,但它通常位于存储库之上,并且用于包装复杂查询,因此可以简单地将它们作为单个方法调用。

Repository为您的数据库提供了一个标准接口,DAO公开了标准查询,这就是为什么两者结合得如此之好; DAO转发对存储库的特定调用。当然,您当然可以选择不在DAO中使用存储库。您可以打开与数据库的连接并直接运行查询,或使用表数据网关,但我认为大多数人更喜欢存储库的原因是因为它比这两个选项更清晰,尽管它们不应该大喊大叫你:)

http://en.wikipedia.org/wiki/Data_access_object

  

在计算机软件中,进行数据访问   object(DAO)是一个对象   为某些人提供了一个抽象的界面   数据库或持久性的类型   机制,提供一些具体的   没有暴露细节的操作   数据库。它提供了一个映射   从应用程序调用到   持久层。这种孤立   分离了什么数据的顾虑   访问应用程序需求   域特定对象的术语和   数据类型(公共接口)   DAO),以及这些需求如何   对特定的DBMS满意,   数据库架构等(   实施DAO)。这个   设计模式同样适用   大多数编程语言   具有持久性的软件类型   需要和大多数类型的数据库,但   它传统上与   Java EE应用程序和   通过。访问的关系数据库   JDBC API因其起源于Sun   Microsystems的最佳实践   指南[1](“核心J2EE模式”)   对于那个平台。