休眠与2个对象之间有关

问题描述

我正在使用hibernate通过AliasToBeanResultTransformer从数据库获取对象。 例如: session.createsqlquery(\“从表中选择col_1 col1,col_2 col2 \”)。setresulttransformer(新的AliasToBeanResultTransformer(MyClass.class)) MyClass具有col1,col2作为成员。 是否可以做以下事情: 有一个MyClass类,它将作为成员List 一个成员用相关表中的相关行的列表来填充此成员,但不执行2个查询并迭代将创建所需对象的循环? 意思是,实现2个实体之间的休眠关系,但使用我自己的实体? 谢谢。     

解决方法

        不知道我是否再次正确地提出了问题。但是如果您想要这样的话:
class MyClass{
    private ClassAnother;
}
这意味着您希望MyClass的成员为ClassAnother而不是\“ col1 \”和\“ col2 \”,那么答案还没有。 您只需要定义构造函数,使其以\“ col1 \”和\“ col2 \”作为参数即可。 希望这可以帮助! 编辑:根据您的评论,您的课程将是:
class ClassA{
   private List<ClassB> classBList;
}
您想在单个SQL查询中填充它。如果这种理解是正确的,那将是不可能的,因为您的结果集将为ClassB的每个记录返回ClassA字段的重复列。     ,        如果您只想检索列表,则此HQL应该可以解决问题
select clasA.classBList from ClassA clasA
该查询将获取classbList属性的所有条目...