JPA中的EntityManager是用于管理实体的接口,它用于进行持久化操作如增删改查等。我们可以通过以下步骤使用EntityManager进行持久化操作:
- 从EntityManagerFactory获得EntityManager实例:
EntityManagerFactory emf = Persistence.createEntityManagerFactory("unitName");
EntityManager em = emf.createEntityManager();
- 开始事务:
em.getTransaction().begin();
- 持久化操作:
// 保存实体
em.persist(entity);
// 修改实体
em.merge(entity);
// 删除实体
em.remove(entity);
// 查询实体
User user = em.find(User.class, 1L);
// JPQL查询
TypedQuery<User> query = em.createQuery("SELECT u FROM User u", User.class);
List<User> users = query.getResultList();
- 提交事务:
em.getTransaction().commit();
- 关闭EntityManager:
em.close();
代码示例:
EntityManagerFactory emf = Persistence.createEntityManagerFactory("exampleUnit");
EntityManager em = emf.createEntityManager();
// 事务开始
em.getTransaction().begin();
// 保存实体
User user = new User("John");
em.persist(user);
// 提交事务
em.getTransaction().commit();
// 关闭EntityManager
em.close();