0

我有 2 个表 TABLE1 和 TABLE2。TABLE1 的休眠类

类表1 {

私有集合<table2s> table2s= new ArrayList<table2s>();

}

现在使用标准我需要获取 Table1 记录,结果应该在链接到 Table1 的列表中包含 Table2s 一个记录。

例如:表 1 TABLE1ID 名称 1 A 2 B 表 2 TABLE2ID TABLE1ID TABLE2NAME 1 1 XXXXX 2 1 XXXXXX 3 1 XXX 4 2 YYYY 5 2 YYYYYY

预期输出:TABLE1ID NAME TABLE2ID TABLE2NAME 1 A 1 XXXXX 2 B 4 YYYY

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

4

1 回答 1

0

使用 join() 方法

    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);
于 2017-01-18T13:59:27.967 回答