这是我的实体类:
@Entity
public class MyData {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
public MyData() {
// ...
}
public MyData(String fieldList, Object ... values) {
// ...
}
// Getters and setters here...
}
稍后,我想执行此查询:
SELECT NEW com.company.MyData('f1,f2,f3',t.f1,t.f2,t.f3) FROM my_data_table t WHERE 1=1
提出了这个例外:
Unable to locate appropriate constructor on class [package.MyData]
我的查询可以包含1,2,3 ......或更多字段。
如何帮助我的JPA提供程序(hibernate)找到构造函数?
Hibernate 3.6.8
JPA 2
Java 6
答案 0 :(得分:1)
以下是我解决问题的方法:
SELECT NEW com.company.MyData('f1,f2,f3',t) FROM my_data_table t WHERE 1=1
我的班级现在看起来像这样:
@Entity
public class MyData {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
public MyData() {
// ...
}
public MyData(String fieldList, MyData md) {
// ...
}
// Getters and setters here...
}