20
JPA getSingleResult()或为null
我有一个在不存在时insertOrUpdate插入Entity或在存在时更新的方法。要启用此功能,我必须执行findByIdAndForeignKey,如果返回的话则返回nullinsert,然后更新。问题是如何检查它是否存在?所以我尝试了getSingleResult。但是,如果 public Profile findByUserNameAndPropertyName(String userName, String propertyName) { String namedQuery = Profile.class.getSimpleName() + ".findByUserNameAndPropertyName"; Query query = entityManager.createNamedQuery(namedQuery); query.setParameter("name", userName); query.setParameter("propName", propertyName); Object result = query.getSingleResult(); if (result == null) return null; return (Profile) result; } 但是getSingleResult抛出一个Exception。 谢谢