领域层和持久层的区别

Har*_*ana 5 java persistence

领域层和持久层是指相同还是不同。域层是我们通常映射到数据库表的DAO,对吗?那么持久层意味着相同还是更多?

如果我们将映射到数据库表的 POJO 称为 DAO,我们所说的驻留查询执行并填充这些 DAO (POJOS) 的类。

最佳做法是什么?将查询执行代码保留在那些 POJO 中还是将它们作为一个单独的类?我的意思是示例假设 A 是到数据库表 A 的类映射。我们是否需要实现像 ADaoImpl 这样的单独类来放置类 A 所需的查询相关代码?我相信这是不对的?将与所有 DAO 类相关的所有 DAO 对象填充、查询执行等保存在一个名为 RBMSDaoImpl 的单个类中,这难道不是最佳实践吗?所以我们称该类为属于 DAO 层的 out 应用程序的 DAO 实现类,对吗?

总而言之,POJOS(DAO) 和 DAOImpl 是我们应用程序的 DAO 层,对吗?持久层是..?

谢谢。

Boz*_*zho 3

维基百科:“业务逻辑层(BLL),也称为领域层”。这就是服务层,您可以在其中执行业务逻辑。持久层负责操作数据库,由服务层使用。

(顺便说一句,在贫乏的应用程序中,我更喜欢“服务层”而不是“域层”——即具有无状态、胖服务和仅具有 getter 和 setter 的域对象的应用程序。)