我是Hibernate的新手,在查看joins中的获取关联时,我遇到了以下查询:
em.createQuery(select guide from Guide guide join fetch guide.Students students);sql中的上述查询如下所示:
select
guide0_id as id_1_2_0,
students1_id as id_1_6_1,
guide0_name as name_2_2_0,
students1_guide_id as guide_id_4_6_1....学生和导游之间有着多方面的关系,学生是这种关系的主人。上面的查询也将获取学生的详细信息,即使在默认情况下指南是延迟加载的。我的问题是,如果我们的意图是让学生在select子句中学习,就像在上面的SQL中看到的那样,为什么我们不能做一个简单的:
em.createQuery(select guide,students from Guide guide join guide.Students
students);通过在students子句中添加select列?
发布于 2018-04-03 05:12:16
上面的查询也将获取学生的详细信息,即使在默认情况下指南是延迟加载的。
因为您使用的是“join”而不是“join”,所以您得到了学生们的热切期待。
发布于 2018-04-03 05:05:03
// you can use simple join query to fetch your desired record as you want
// and also you can get by Hibernate Criteria instead of using the SQL Query like
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="child_table_column",referencedColumnName="id")
private ParentTable updatedBy;
// use above for POJO Configuration and then use simple criteria to get the DATahttps://stackoverflow.com/questions/49621625
复制相似问题