我必须检索数据库条目。我知道我写的查询只返回一行。因此,我正在使用 getSingleResult。但是,当查询返回 null 时,我无法捕捉到它。我该如何解决这个问题?这是我的一段代码
try {
result = em.createQuery("SELECT d FROM fields d WHERE d.fieldID = :fieldID", Field.class)
.setParameter("fieldID", fieldID)
.getSingleResult();
//manual null check only seems to work. But it seems tedious to check every DB column for null value :(
if((result.getValsText() == null)){
result = new Field();
result.setValText("empty");
}
} catch (NoResultException e) {
result = new Field();
result.setValText("empty");
}
请指教。
谢谢