有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java组织。冬眠MappingException:无法确定的类型

我想创建一个用属性填充假对象的@Formulas,而不是三个@Formulas。MySimpleData是MyHugeObject的更简单版本,我不想完全加载

 @Formula("(select myObject.id1 as id1, myObject.id2 as id2, myObject"
            + ".id3 as id3 from my_object myObject where myObject.id = this_id)")
    private MySimpleData mySimpleData = new MySimpleData();

org.hibernate.MappingException: Could not determine type for: mypackage.MySimpleData

 public class MySimpleData {

    private Long id1;
    private String id2;
    private String id3;

    public MySimpleData(Long id1, String id2, String id3) {
        this.id1 = id1;
        this.id2 = id2;
        this.id3 = id3;
    }

    public MySimpleData() {
    }  
}

共 (1) 个答案

  1. # 1 楼答案

    你可以试试这样的

    @Formula("(select new MySimpleData(myObject.id1, myObject.id2, myObject.id3) from my_object myObject where myObject.id = this_id)")
    private MySimpleData mySimpleData;
    

    如果仍然出现相同的错误,那么在MySimpleData前面添加完整的类路径

    像那样select new full.classPath.MySimpleData(..