当前位置:  开发笔记 > 后端 > 正文

ORM继承

如何解决《ORM继承》经验,为你挑选了2个好方法。

有没有人真正想要并在ORM工具上使用继承支持,如果是,您认为哪一个提供最好的支持?

或者ORM继承是"天上的馅饼"概念?



1> Guillaume..:

我已经使用了Hibernate的继承(以及一些使用Django),并且非常遗憾.

对于域类,"基于继承的组合"原则尤其如此.虽然我同意在某些情况下继承在模型级别有​​意义,但在大多数情况下,继承将为您提供一个非常静态的域模型,其中一个对象将无法更改为另一个类.

我还发现大多数开发人员对数据库级别的继承概念不满意,因此维护变得更加复杂.

最后,还有一些技术问题,比如Hibernate设置的代理将隐藏对象的实际类.它使"实例"表现得很苛刻.当然,你可能会说"实例"是代码气味,也许这是另一个提示,组合可能是一个更好的解决方案......



2> GBa..:

我非常喜欢这个问题.我已经使用ORM工具(Toplink,现在是eclipselink,Hibernate)一段时间了,我一直认为这是JPA文档中引用的,但我从来没有真正需要它.基本上我的理念是ORM只是为了阻止你编写tedius代码来提取数据库的记录.这确实是一个巨大的节省时间,它可以防止你犯下愚蠢的错误.当然你可以用这个做一些奇特的东西,但为什么不把它保存到控制器(如果你跟随MVC)而不是把它粘在模型中?

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有