子查询HQL中的列表/对象集

时间:2012-09-11 21:57:39

标签: hibernate set subquery hql

我正在尝试使用HQL进行查询。是否有可能在hql的子查询中返回一组/对象列表?如果是这样,该怎么做。

例如:

SELECT ta1.id, ta1.name, obj FROM table1 AS ta1, table2 AS obj WHERE obj.id = ta1.id;

table2将返回一个对象列表,我想将它们检索为listset。因此,响应将包含id,name,obj集。任何帮助将不胜感激。

1 个答案:

答案 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;
    }
}