我正在尝试使用HQL进行查询。是否有可能在hql的子查询中返回一组/对象列表?如果是这样,该怎么做。
例如:
SELECT ta1.id, ta1.name, obj FROM table1 AS ta1, table2 AS obj WHERE obj.id = ta1.id;
table2将返回一个对象列表,我想将它们检索为list
或set
。因此,响应将包含id,name,obj集。任何帮助将不胜感激。
答案 0 :(得分:0)
实现resulttransformer。代码在这里说明,我没有这里的IDE /编译器
class ResultTransformer : Resulttransformer
{
public List transformList(List collection)
{
ArrayList<T1> result = new ArrayList<T1>();
for (int tuple : collection)
{
T1 t1 = GetT1ById(result, tuple[0]);
if (T1 == null)
{
result.add(t1)
}
t1.T2s.add(new T2(tuple[3], ...));
}
return result;
}
public object transformTuple(Object[] tuple, String[] aliases)
{
return tuple;
}
}