我有2个表--A和B.每个表都有相应的hbm.xml和pojo
Class A{
我的要求是,每当创建B的对象时,它也应该将数据推送到表A中。类似地,当我从B读取时,它应该基于 aId 匹配给我来自A的数据。这是一对一的映射。我想传递 aId 值作为查询的输入。并从对应于该匹配行的两个表中获取数据。
有人可以告诉我如何使用HQL查询来实现这一目标吗?我现在的结构是否符合我的要求?
String aId;
String col;
}
Class B{
String bId;
String aId;//as reference to class A
A aObj;
}
B.hbm.xml contains the following entry to map A to B:
<many-to-one name="aId" column="AID" not-null="true" class="com.pojo.A" unique="true"/>
答案 0 :(得分:1)
您的课程不正确。 B类应该有一个A类型的字段,但没有aId
字段。
阅读unidirectional OneToOne associations上的Hibernate文档,因为这就是你所拥有的。
您的要求表明您应该cascade从B到A的所有操作,并且应该急切地提取此关联(使用<many-to-one lazy="false"...>
)。