使用hibernate时,是否可以指定某些列(包括id,审计列等)存在于抽象基类中?这似乎是一种相当普遍的做法。特别是审计?
但是,我需要让这个基类只为审计列指定列名和属性/方法名。虽然Integer id列存在于抽象基类中,但我需要在具体类中的hibernate中定义id元素,因为每个具体类将使用不同的序列。
我最初开始寻找一种方法,只需在另一个hbm文件中“包含”一个hbm文件,并在一个地方定义审计列,但没有找到解决方案。然后我开始考虑使用带有abstract = true的类,但似乎那些类仍然需要一个id,这在我的情况下并不真正起作用。
似乎@MappedSuperClass可以在注释世界中使用,但是在使用.hbm.xml文件时我无法找到解决方案?
有人可以提供一个如何实现这个目标的例子吗?
答案 0 :(得分:2)
Hibernate似乎不支持XML中的映射超类,因此您可以尝试使用abstract
和union-subclass
进行模拟,如this article中所述。但这很麻烦。