实体框架中的贫血领域模型

时间:2017-04-25 10:05:56

标签: java hibernate anemic-domain-model

我一直在阅读这个贫穷的域名模型问题,福勒在他的网站上描述了这个问题。

我理解它的方式,他说域模型类应该包含连接到它们的业务逻辑,因为它更多OOP并具有一些其他优点。

现在我的问题:假设我使用了hibernate,在这种情况下,我使用JPA或Hibernate注释来注释我的实体类。

根据Fowler的说法,这些实体类应该包含业务逻辑吗?

我在问,因为根据罗伯特·马丁(他在YouTube上的几个演讲中说过),你绝不应该把你的业务逻辑放在包含某种类型的第三方代码的类中。相反,应该将业务逻辑和业务规则分开并保护其免受特定于技术的细节的影响。

我是否正确地说他们互相矛盾?或者我只是没有得到它?

再说一遍:根据Fowler的说法,我应该将业务逻辑放入实体类(如User,Product等)中,如果我使用的是presistence框架,那么包含那些技术特定的注释?

我一直认为您应该尝试尽可能与第三方代码分离,以保护您自己的代码免受意外更改。

0 个答案:

没有答案