我使用以下代码获取单行结果:
@Override
public PaymentTransactions transactionByUnique_Id(String unique_id) throws Exception {
String hql = "select e from " + PaymentTransactions.class.getName() + " e where e.unique_id = :unique_id";
Query query = entityManager.createQuery(hql).setParameter("unique_id", unique_id);
PaymentTransactions paymentTransaction = (PaymentTransactions) query.getSingleResult();
return paymentTransaction;
}
但是当我没有匹配的行时,出现异常:
14:25:41,736 INFO [stdout] (default task-1) javax.persistence.NoResultException: No entity found for query
如何抑制该异常并仅继续执行代码?
答案 0 :(得分:3)
只需抛出并捕获javax.persistence.NoResultException异常并继续执行代码即可。
可能的How to continue program execution even after throwing exception?副本
答案 1 :(得分:1)
只需更新日志记录方式:
log4j.logger.javax.persistence=WARN