用Springjpa检查db

ztigrdn8  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(367)

我在用springboot做一个项目。我对spring jpa数据有问题。我想使用两个参数检查数据库中是否已经存在记录

@Transactional
@Modifying
@Query("SELECT CASE WHEN COUNT(dfe) > 0 THEN 'true' ELSE 'false' END FROM DeployedFunctionEntity dfe WHERE dfe.function.idFunction = ?1 and dfe.gatewayId = ?2")
boolean existsByFunctionIdAndGatewayId(@Param("idFunction") Integer functionId,
        @Param("gatewayId") Integer gatewayId);
boolean exist = deployedFunctionDao.existsByFunctionIdAndGatewayId(functionId, gatewayId);

我总是会遇到以下错误:
org.springframework.dao.invaliddataaccessapiusageexception:修改查询只能使用void或int/integer作为返回类型!;
嵌套异常为
java.lang.illegalargumentexception:修改查询只能使用void或int/integer作为返回类型!
我该怎么修?

ejk8hzay

ejk8hzay1#

这个 @Modifying 不用于非修改查询,因此只能用于insert、update、delete或ddl查询。因为您只进行了一个select查询,所以删除注解就可以正常工作。

相关问题