Hibernate的结果转换器可以用于映射到相关的非托管实体吗?

时间:2013-09-15 09:11:44

标签: java hibernate orm resulttransformer

我使用ResultTransformer映射到简单的非托管实体,即与其他实体无关。但我想知道是否可以通过hibernate映射到一组相关的非托管实体?只是为了说清楚,如果我有一组非管理实体,如下,

Class A {
    private String a;

    List<B> bs;

    // getters and setters
}

Class B {
    private String b;

    List<C> cs;

    // getters and setters

}

Class C {
    private String c;

    // getters and setters
}

我有一个如下的SQL,

select 
    a.a, 
    b.b, 
    c.c 
from 
    a 
    left join z on z.id = a.id 
    join b on b.id = z.id 
    left join c on b.id = c.id

然后我想做类似

的事情
.setResultTransformer(Transformers.aliasToBean(A.class))

我知道我可以在没有ResultTransformer的情况下通过返回数据并自己填充对象图来做到这一点。如果我必须编写该逻辑,我想将其实现为自定义ResultTransformer。你觉得这样做是明智的吗?

任何想法或帮助将不胜感激。谢谢!

0 个答案:

没有答案