JPA query 报No entity found for query 异常
问题描述:
javax.persistence.NoResultException: No entity found for query
getSingleResult的源码有一句: @throws EntityNotFoundException if there is no
result 使用getSingleResult()方法时,查询没有结果,它是抛异常的,不会返回null,导致报错。
解决办法:
使用try catch捕获NoResultException异常即可。
return (BaseRoleCategory) query.getSingleResult();
捕获异常
try {
return (BaseRoleCategory) query.getSingleResult();
} catch (Exception e) {
return null;
}
问题解决