在构造函数上使用JPA SELECT NEW和Timestamp时出错

Nun*_*ado 3 java hibernate jpa

我有以下JPA查询:

SELECT NEW test.vo.HappyVO(o.acid, o.dest, o.dep, o.time) FROM HappyTable1 o
Run Code Online (Sandbox Code Playgroud)

我的HappyVO有以下构造函数:

public HappyVO(String a, String b, String c, java.sql.Timestamp e)
Run Code Online (Sandbox Code Playgroud)

当我运行此查询时,我收到以下错误:

 org.hibernate.hql.internal.ast.QuerySyntaxException: Unable to locate appropriate constructor on class [test.vo.HappyVO]
Run Code Online (Sandbox Code Playgroud)

如果我改变构造函数

public HappyVO(String a, String b, String c, Object e)
Run Code Online (Sandbox Code Playgroud)

错误不会发生,变量e是java.sql.Timestamp的一个实例

忘记提到我正在使用MySQL数据库,并且该列的类型为timestamp,并且HappyTable1中的时间字段的声明类型是java.sql.Timestamp

Dav*_*que 5

它看起来很像这个已知的Hibernate错误:https://hibernate.atlassian.net/browse/HHH-4179

建议的解决方法是在POJO构造函数中使用Date类型.