我在用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作为返回类型!
我该怎么修?
1条答案
按热度按时间ejk8hzay1#
这个
@Modifying
不用于非修改查询,因此只能用于insert、update、delete或ddl查询。因为您只进行了一个select查询,所以删除注解就可以正常工作。