使用EntityManager查找和刷新的正确方法

时间:2014-12-02 14:14:12

标签: jpa ejb entitymanager

我在EJB项目中使用JPA。

@EJB
UserDAO userDAO;

public User findUserById(int id){
    User user = userDAO.find(id); //em.find
    userDAO.refresh(user); //em.refresh
    return user;
}

这是对的吗?我想刷新以获得User中实际的集合大小,这样做可以吗?或者我应该制作另一个功能来检查该集合?

1 个答案:

答案 0 :(得分:0)

您不需要执行refresh,但这并没有带来任何好处。 find之后的用户应该已包含所有必需的信息。

如果你没有得到预期的大小,可能是因为修改集合的其他操作还没有提交事务或其他东西,这很大程度上取决于你在那里。