【问题标题】:Usecase of Spring DAOSpring DAO 用例
【发布时间】:2012-10-12 07:24:27
【问题描述】:

我想知道 Spring DAO 的典型用例是什么,我们可以轻松地在不同的持久性框架之间切换。

除了抽象样板代码(对于 JDBC、Hibernate 之类的),为什么任何应用程序都想如此频繁地更改其 ORM 框架?

【问题讨论】:

    标签: spring dao


    【解决方案1】:

    通过使用具有不同 DAO 接口的 DAO 模式,您可以模拟 DAO 实现。这样可以提高代码的可测试性,因为您可以编写不需要数据库访问的测试。

    这不仅关乎能够频繁地在 ORM 框架之间切换,而且还关乎在您被强制更改 ORM 时减少工作量。

    另一个原因是,您可能拥有不同的数据源,例如数据库、Web 服务或文件系统。在这种情况下,您不会抽象 ORM,而只是抽象一般的持久性机制。

    【讨论】:

      【解决方案2】:

      我认为 DAO 背后真正重要的想法是,您只有一个位置,用于存放特定实体的所有数据访问相关代码。这使您的持久层的测试和重构更容易,并且您的代码更具可读性。

      此外,它使代码更具可读性。想想你团队中的一个新开发人员应该实现一个特性。如果她需要访问数据库,她会在 dao 中查找数据访问方法。 如果您将数据访问代码分散在不同的服务中,那么有人会产生代码重复的风险非常高。

      【讨论】:

        猜你喜欢
        • 2023-04-04
        • 2018-01-10
        • 2013-01-16
        • 1970-01-01
        • 1970-01-01
        • 2011-02-21
        • 2011-01-27
        • 2014-08-24
        • 2010-12-07
        相关资源
        最近更新 更多