Spring框架中的DAO和Service层到底是什么?
我正在寻找理论上的答案。
最佳答案
就 Spring 而言,没有区别。按照惯例,您可以用 @Repository
标记 DAO 类,用 @Service
标记服务。前者还做了一些持久层异常翻译。
既然您在理论上问:DAO 应该执行原始数据库操作并将它们转换为一些更高级别的构造(对象、集合)。服务应该调用 DAO 并执行业务操作。通常,事务划分是在服务层上执行的,以跨越多个 DAO 调用。
最后,DAO 应该从持久性细节中抽象出业务逻辑,理想情况下允许在不更改业务逻辑(服务)的情况下切换持久层。由于持久性提供程序的泄漏抽象(例如延迟加载),这几乎是不可能的。
关于java - Spring框架中的DAO和Service层到底是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10025028/