Hibernate 从多个表中获取数据的HQL查询

Hibernate 从多个表中获取数据的HQL查询,hibernate,mapping,hql,parent-child,Hibernate,Mapping,Hql,Parent Child,我有两个表-A和B,每个表都有相应的hbm.xml和pojo。 A类{ 字符串辅助; 字符串列; } B类{ 字符串投标; 字符串辅助;//作为类A的参考 A aObj; } B.hbm.xml包含将A映射到B的以下条目: 我的要求是,无论何时创建B的对象,它都应该将数据推送到表A中。同样地,当我从B中读取数据时,它也应该根据aId匹配给我A中的数据。这是一个一一映射。我想将aId值作为输入传递给查询。并从匹配行对应的两个表中获取数据。 有人能告诉我如何使用HQL查询来实现这一点吗?我现在

我有两个表-A和B,每个表都有相应的hbm.xml和pojo。

A类{
字符串辅助;
字符串列;
}
B类{
字符串投标;
字符串辅助;//作为类A的参考
A aObj;
}
B.hbm.xml包含将A映射到B的以下条目:

我的要求是,无论何时创建B的对象,它都应该将数据推送到表A中。同样地,当我从B中读取数据时,它也应该根据aId匹配给我A中的数据。这是一个一一映射。我想将aId值作为输入传递给查询。并从匹配行对应的两个表中获取数据。
有人能告诉我如何使用HQL查询来实现这一点吗?我现在的结构是否符合我的要求?

您的类不正确。B类应具有a类字段,但不具有
aId
字段

请阅读上的Hibernate文档,因为这是您所拥有的


您的需求表明您应该执行从B到A的所有操作,并且应该急切地获取此关联(使用
)。

在我做了这些更改之后,当我尝试运行代码时,我得到一个运行以下HQL的异常:从B bAlias选择bAlias,bAlias.aObj,其中bAlias.aObj.aId=?和bAlias.aObj.col=?我得到的错误是:无效的对象名B(其中B是表名)