我正在开发一个应用程序,我开始创建我的JPA实体(注释+ persistence.xml)。然后在我的persistence.xml文件中,我为MySql数据库创建了一个连接(连接正常)。
问题在于我只是不知道如何在不创建“主类”的情况下保留我的实体。
我是否必须为我要创建的每个实体运行我的主类?
答案 0 :(得分:1)
要保留实体,您需要一个entityManager实例。由于您有一个Java EE容器,您可以使用某个bean
中的注释@PersistenceContext
来获取entityManager的实例
我的意思是一些豆?它是由Java EE容器管理的bean。所以,例如你必须定义一个像这样的bean:
@Stateless
public class MyController{
@PersistenceContext
private EntityManager em;
public void persistIt(Object anEntity){
em.persist(anEntity);
}
}
注释@Stateless
向容器指示它必须管理此类,并在需要时负责提供entityManager的实例。
因此,要准确回答您的问题:只要您找到了访问entityManager实例的方法,就不必强制另一个类来持久保存实体。
<强>但是强>:
此外,您可以在控制器上正确处理交易。