gpt4 book ai didi

java - 每次访问数据库时都需要 createEntityManager() 吗?

转载 作者:太空宇宙 更新时间:2023-11-04 08:08:00 24 4
gpt4 key购买 nike

如果您正在执行 CRUD 过程,您是否必须执行此操作(事务类型:RESOURCE_LOCAL 而不是 JTA)

@PersistenceUnit(unitName="mongo")
EntityManagerFactory emf;

EntityManager em;


@Inject
private SomeObj injectableObj;

public void create()
{
em = emf.createEntityManager(); <---- here
SomeObj obj = new SomeObj();
em.persist(obj);
}

public void read()
{
em = emf.createEntityManager(); <---- here
Query query = em.createQuery("Select s from SomeObj s");

}

public void update()
{
em = emf.createEntityManager(); <---- here
SomeObj s = em.find(SomeObj.class, injectableObj.getId());
s.setSomeObj(injectableObj.getSomeObj());

}

public void delete()
{

em = emf.createEntityManager(); <---- here
SomeObj s = em.find(SomeObj.class, injectableObj.getId());
em.remove(s);
}

问题:有没有办法注入(inject)EntityManager?

最佳答案

也许尝试在这里寻找示例:

Injections EntityManager

我更喜欢使用:通过@PersistenceContext注入(inject)

关于java - 每次访问数据库时都需要 createEntityManager() 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11742065/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com