我使用JPA(JPA / Hibernate + MySQL)返回一个自定义Bean,但是Bean中的一个参数由传入参数确定常量。
@Query("select new cn.Vo(count(r), r.id, ?3) " +
"from Record r where r.id in ?1 and r.zd = ?2 group by r.id")
List<Vo> findVo(List<Long> ids, long zd, int constant);
VO.java:
@Data
public class Vo {
private long count;
private long id;
private int contant;
public Vo(long count, long id) {
// i found this method is executed
}
public Vo(long count, long id, int contants) {
// but this method is not executed!
}
}
但是最后我发现程序正常运行,但是constant
为空。
如何通过SQL传递constant
?而不是获取Bean并遍历填充的常量