我正在JPA中对我的数据库执行查询.Query"查询"4个表,结果聚合来自不同表的列.
我的查询类似于:
Query query = em.createQuery("SELECT o.A, o.B, o.C, e.D, c.E FROM Table1 o,
Table2 i, Table3 e, Table4 c WHERE o.X = i.X AND i.Y = e.Y AND i.Z = c.Z");
Run Code Online (Sandbox Code Playgroud)
如何获取查询结果并提取不同的字段?
我创建了一个表示结果列表中每个项的类(MyObject),我想将query.getResultList()转换为List <MyObject>.
我该怎么做?
JB *_*zet 16
这种查询返回一个List<Object[]>.所以你只需要一个循环将每个数组转换成你的类的实例:
List<Object[]> rows = query.getResultList();
List<MyObject> result = new ArrayList<>(rows.size());
for (Object[] row : rows) {
result.add(new MyObject((String) row[0],
(Long) row[1],
...));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18667 次 |
| 最近记录: |