EJB: 很久以前一直用EntityManager下getResultList()查询数据,即便一个数据亦是如此,所以要频繁的List.get(0),生活就在这样的反反复复中变得让人“怎渡”;后来,getSingleResult()出现了,然后,过了几秒钟,它被宠幸了…
尽管如此,用它时还是要小心,因为你的代码的“可能异常”里从此就多了一个“No entity found for query”,如果你不记得你曾用过.getSingleResult()这么个东东,你可能就一辈子不记得了,你为了这样一个东东发呆、发闷、发火,只因为你曾毫无顾忌的宠幸它…
在getSingleResult的源码里有这样一句: @throws EntityNotFoundException if there is no result
也就是说,查不到结果时,它是抛异常的,不会返回null..。