最佳答案
我有一个 insertOrUpdate
方法,它插入一个 Entity
时,它不存在或更新,如果它存在。要启用这个,我必须 findByIdAndForeignKey
,如果它返回 null
插入,如果不然更新。问题是如何检查它是否存在?所以我试了 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
。
谢谢