Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 查询输出正在引发异常_Java_Hibernate_Spring Data Jpa - Fatal编程技术网

Java 查询输出正在引发异常

Java 查询输出正在引发异常,java,hibernate,spring-data-jpa,Java,Hibernate,Spring Data Jpa,我使用的是hibernate数据jpa。这是我的回复 公共接口映射库 扩展JpaRepository(配置映射,长){ 现在在我的服务类中,当我尝试使用 for (int i = 0; i < vMList.size(); i++) { Long vMCount = vMRepo.getCount(Id, vMList.get(i)); } 注意:vMList是作为Long列表的vm列表使用原语Long(而不是包装对象Long)。 请参阅中的示例5.派生计数查询 使用原语

我使用的是hibernate数据jpa。这是我的回复

公共接口映射库 扩展JpaRepository(配置映射,长){

现在在我的服务类中,当我尝试使用

for (int i = 0; i < vMList.size(); i++) {
     Long vMCount = vMRepo.getCount(Id, vMList.get(i));
   }
注意:vMList是作为Long列表的vm列表

使用原语Long(而不是包装对象Long)。 请参阅中的示例5.派生计数查询 使用原语long(而不是包装对象long)。 请参阅中的示例5.派生计数查询

实际上,我通过将vMlist更改为BigInteger而不是Long解决了这个问题。问题是,我将vm列表设置为BigInteger,而它预期为BigInteger


我还将getCount()方法更改为BigInteger而不是Long。

实际上,我通过将vMlist更改为BigInteger而不是Long解决了这个问题。问题是,我将vm列表设置为BigInteger,而它预期为BigInteger


我还将getCount()方法改为BigInteger而不是Long。

是否尝试将“Long”的类型改为“BigInteger”?是的,我尝试过,但类型不匹配,表示无法从Long转换为BigIntegerselect count()返回一个BigInteger,因为表中可能有大量的行,因此计数可能大于long的最大值。因此,您必须接受这一点,并从方法中返回一个BigInteger,而不是long。然后由您决定如何使用返回的BigInteger。如果您确信它的值插入一个long,然后阅读biginger的javadoc,了解如何将其转换为long。是否尝试将“long”的类型更改为“biginger”?是的,我尝试过,但类型不匹配,表示无法从long转换为bigingerselect count()返回一个BigInteger,因为表中可能有大量的行,因此计数可能大于long的最大值。因此,您必须接受这一点,并从方法中返回一个BigInteger,而不是long。然后由您决定如何使用返回的BigInteger。如果您确信它的值放入long,然后阅读biginger的javadoc,了解如何将其转换为long。
for (int i = 0; i < vMList.size(); i++) {
     Long vMCount = vMRepo.getCount(Id, vMList.get(i));
   }
com.sun.jdi.InvalidTypeException: generated value (java.math.Biginteger) is not compatible with declared type (java.lang.Long)