Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate 使用条件的嵌套集合:如何检索table1.getTable2().get(0)使用条件_Hibernate_Orm_Criteria_Hibernate Mapping_Nhibernate Projections - Fatal编程技术网

Hibernate 使用条件的嵌套集合:如何检索table1.getTable2().get(0)使用条件

Hibernate 使用条件的嵌套集合:如何检索table1.getTable2().get(0)使用条件,hibernate,orm,criteria,hibernate-mapping,nhibernate-projections,Hibernate,Orm,Criteria,Hibernate Mapping,Nhibernate Projections,我有两张桌子表1和表2。 表1的hibernate类 类别表1 { 私有集合table2s=新数组列表() } 现在使用条件,我需要获取Table1记录,结果应该是链接到Table1的列表中的Table2sOne记录 例:表1 表1 ID名称 1A 2 B 表2 表2ID表1ID表2名称 111XXXXX 2 1 XXXXXX 3.1 XXX 4.2 YYYY 5.2 YYYY 预期产出: TABLE1ID名称TABLE2ID Table2名称 1xxx 2B4YYYY 类似于table1.ge

我有两张桌子表1和表2。 表1的hibernate类

类别表1 {

私有集合table2s=新数组列表()

}

现在使用条件,我需要获取Table1记录,结果应该是链接到Table1的列表中的Table2sOne记录

例:表1 表1 ID名称 1A 2 B 表2 表2ID表1ID表2名称 111XXXXX 2 1 XXXXXX 3.1 XXX 4.2 YYYY 5.2 YYYY

预期产出: TABLE1ID名称TABLE2ID Table2名称 1xxx 2B4YYYY

类似于table1.gettable2s().get(0)

使用join()方法

CriteriaBuilder cb=em.getCriteriaBuilder();
CriteriaQuery q=cb.createQuery(Table1.class);
根r=q.from(表2.class);
Join usersJoin=r.Join(“字段”,JoinType.LEFT);
    CriteriaBuilder cb = em.getCriteriaBuilder();
    CriteriaQuery<Table1> q = cb.createQuery(Table1.class);
    Root<Table1> r = q.from(Table2.class);

    Join<Table2, Table1> usersJoin = r.join("field", JoinType.LEFT);