У меня есть метод 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
.
Спасибо