下面是我检查实体是否已经存在的方法。
public boolean isExist(String genreName) throws PersistenceException{
EntityManager em = EMF.get().createEntityManager();
boolean flag = false;
try{
Genre genre = em.find(Genre.class, genreName);
if (genre != null)
flag = true;
}finally{
em.close();
}
return flag;
}上面的代码可以吗?请建议一下。
发布于 2012-09-18 13:23:57
isExist不是英语。叫它像genreExists。public boolean genreExists(String genreName) throws PersistenceException {
EntityManager em = EMF.get().createEntityManager();
try {
return em.find(Genre.class, genreName) != null;
} finally {
em.close();
}
}可能与此无关的边注:
如果您使用的是Java 7,并且EntityManager实现了AutoCloseable或它的一个不同的子接口(例如Closeable),那么使用新的尝试-有-资源声明:可以使代码更加简洁。
try (EntityManager em = EMF.get().createEntityManager()) {
return em.find(Genre.class, genreName) != null;
}但它没有所以你不能。
发布于 2012-09-18 13:21:05
看上去很好。如果您知道答案后立即返回,您可以省略布尔标志:
public boolean isExist(final String genreName) throws PersistenceException {
final EntityManager em = EMF.get().createEntityManager();
try {
final Genre genre = em.find(Genre.class, genreName);
if (genre != null) {
return true;
}
return false;
} finally {
em.close();
}
}https://codereview.stackexchange.com/questions/15704
复制相似问题