Java 是否可以使用hibernate条件将1个表与3个表连接起来?

Java 是否可以使用hibernate条件将1个表与3个表连接起来?,java,sql,hibernate,hql,criteria,Java,Sql,Hibernate,Hql,Criteria,我想使用Hibernate条件将1个具有id和3个FK(外键)的表连接到3个其他表。可能吗?我附上一张照片,这是我想做的事。 当然,稍后我想为所有表添加限制。提前感谢你的帮助 问候,, 皮奥特 编辑: 我意识到我需要5张桌子,所以我更新了图片。它描述了一切 我的代码: createCriteria().createAlias(Table1.FK2, "table2") .createAlias(Table1.FK3, "table3") .createAlias(Table1.FK4, "ta

我想使用Hibernate条件将1个具有id和3个FK(外键)的表连接到3个其他表。可能吗?我附上一张照片,这是我想做的事。 当然,稍后我想为所有表添加限制。提前感谢你的帮助

问候,, 皮奥特

编辑: 我意识到我需要5张桌子,所以我更新了图片。它描述了一切

我的代码:

createCriteria().createAlias(Table1.FK2, "table2")
.createAlias(Table1.FK3, "table3")
.createAlias(Table1.FK4, "table4")
.createAlias("table2." + Table2.FK5, "table5")     
.add(Restrictions.eq(...)).list();
如下所示

Criteria c = session.createCriteria(Table1.class, "table1");
c.createAlias("table1.table2", "t1t2"); // inner join by default
c.createAlias("table1.table3", "t1t3");
c.createAlias("table1.table4", "t1t4");
return c.list();

其中表*是实体名称

简短回答:是的,是否100%正确?为什么第二行和第三行都有“t1t2”?@saba是一个拼写错误,已更正,这是我们如何与Criteria API进行连接的,请尝试并验证您是否可以根据实际图片更新您的答案?我仍然不确定它到底是如何工作的。@saba确实帮助了您,还检查了更新的答案,注释中补充说“Table*”是实体names@saba最好发布你的实体