我使用Hibernate注释来存留我的类。 我目前使用以下策略来映射类Hibernate多态HQL SELECT语句
我有一个抽象类,它是父类,我有两个继承它的子类 母亲,父亲。
我映射会这样:
@MappedSuperclass
public abstract class Parent {
private int age;
private String name;
...
}
而其他两个类声明如下:
@Entity
public Class Father extends Parent {
private boolean haveMustash;
...
}
所以基本上情况是“每类表”。
现在我想创建一个Hibernate HQL语句,它将更新父级的年龄,而不管它是什么样的(母亲,父亲)。将使用在两个表中都是唯一的名称列来查找父项。但如果是母亲或父亲,我不知道只是看这个名字。 如何创建一个将在两个表中查找的HQL语句,并返回更新的正确实体?
我想过这样的事情:(但我没有一个想法,如果它甚至有可能)
Parent parent = hibernateTemplate.find("from Mother,Father where name="
+ name);
它不工作,我得到父不映射(休眠异常) – stdcall
那么,然后映射它。 –
整个想法是为了不映射,它是一个抽象类,父亲和母亲从它的基本映射。 – stdcall