Jpa 关闭EntityManager org.datanucleus.exceptions.NucleusUserException
我的方法如下:Jpa 关闭EntityManager org.datanucleus.exceptions.NucleusUserException,jpa,datanucleus,entitymanager,Jpa,Datanucleus,Entitymanager,我的方法如下: public List<Profile> listProfiles(){ EntityManager em = EMF.get().createEntityManager(); List<Profile> list = null; try{ Query q = em.createQuery("SELECT p FROM Profile p"); list = (List<Profile>
public List<Profile> listProfiles(){
EntityManager em = EMF.get().createEntityManager();
List<Profile> list = null;
try{
Query q = em.createQuery("SELECT p FROM Profile p");
list = (List<Profile>)q.getResultList();
} catch(NoResultException ex){
System.out.println("ERROR CATCHED: " + ex.getMessage());
} finally{
em.close();
}
return list;
}
我应该关闭实体管理器吗?还是我遗漏了一些概念?另一个概念是使用GAE JPA插件的v2。它已经发布很久了。正在使用em.close之前的list.size确定吗?谢谢。我对DataNucleus插件的2.0版这句话感到困惑,因为它是一个实验性的插件,除了在一些Google文档作者的头脑中,它从来都不是实验性的,因为从它开发的第一天起,稳定性就是它的目标。正如在这个网站上无数次提到的那样,它在发布时通过了测试,而且仍然比谷歌v1插件通过了更多的测试
finally{
list.size();
em.close();
}