我有一種方法可以在用戶傳遞參數時搜索一個名稱。 現在我需要一種方法來告訴我員工在公司中的角色是什麼那個JPA查詢有什麼問題,需要通過特定名稱來找到一個用戶
想法是將這些數據插入到組合框中。
這是我曾經看到的姓名通過參數傳遞的方法:
public List<User> findbyName(String name) {
EntityManager em = getEntityManager();
String sql = "select u from User u where UPPER(u.name) like UPPER ('" + name + "%')";
List<User> u = null;
try {
u = (List<User>) em.createQuery(sql).getResultList();
} catch (Exception e) {
return null;
}
return u;
}
這裏是方法,即時通訊試圖做的:
public List<User> findbyRole(){
EntityManager em = getEntityManager();
String sql = "select u from User u where UPPER(u.role) like (journalist)";
List<User> u = null;
try {
u = (List<User>) em.createQuery(sql).getResultList();
} catch (Exception e) {
return null;
}
return u;
}
代碼插入到組合框,這是正確的?
List <User> list= new UserJpaController().findbyRole();
for(int i=0;i<lista.size();i++){
combojournalist.addItem(list.get(i).getCargo());
}
你不應該捕捉異常沒有記錄錯誤:'} catch(Exception e){ return null; }'。你的查詢是錯誤的。 – Jens
是的,需要看到,但方法「findbyName」工作正常,但方法「findbyRole」沒有返回任何內容,我有一個人作爲記者。任何想法爲什麼? – Janson
應該引用'記者'嗎?不應該是'JOURNALIST'嗎? –