鉴于我的本机SQL查询返回一个非空结果,有人可以帮助我使用query.getSingleResult()与使用query.getResultList.get(0)进行评估

例如:

String queryStr = "Select count(id) FROM Job J where companyMaster = 3";
Query query = getEntityManager().createNativeQuery(queryStr);
return ((BigInteger) query.getResultList().get(0)).intValue();


产生与以下结果相同的结果:

String queryStr = "Select count(id) FROM Job Jo where companyMaster = 3";
Query query = getEntityManager().createNativeQuery(queryStr);
return ((BigInteger) query.getSingleResult()).intValue();

最佳答案

如果您正在使用类似getById的数据库方法,则可以使用getSingleResult方法。在这种情况下,请确保数据库中只有一个与该ID相匹配的实体。

但是,在执行计数时,应该使用getSingleResult,因为它几乎肯定会返回结果,而不是使用getResultList.get(0)。

关于java - query.getSingleResult()与query.getResultList()。get(0),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31050110/

10-09 22:00