-2

我正在使用休眠版本 3.2.5 我有这样的 HQL:

select new org.com.Utilities.Inventario.ReporteInventario(P.Id,P.Name,DP.Rotacion,LongResult,IntegerResult,IntegerResult,IntegerResult,IntegerResult,IntegerResult,IntegerResult,)

我有一个这样的构造函数:

public ReporteInventario(
        String CodPro,
        String NomProd,
        String RotProd,
        Long TotalStock,
        Integer Val1,
        Integer Val2,
        Integer Val3,
        Integer Val4,
        Integer Val5,
        Integer Val6)

工作正常。但我尝试了以下方法:

public ReporteInventario(
    String CodPro,
    String NomProd,
    String RotProd,
    Long TotalStock,
    Integer.. Array) 

但我收到不符合要求的构造函数。我不喜欢冗长。我的问题是我可以在我的 Hibernate 可以填充的构造函数中使用 Varargs。多谢。

4

1 回答 1

0

是Java吗?(这似乎不是您的编码约定)。

如果是这样,尽管我没有尝试过,但我相信您需要将 Integer 数组传递给 vararg 参数。因为在 Java 中,vararg 实际上是一个数组,而这只是编译器帮助将“参数”更改为数组的语法糖。

但是我认为没有任何方法可以在 HQL 中创建数组

因此,请坚持您的第一个方法签名。

于 2012-07-27T01:58:05.293 回答