clear()和flush()在JPA / EclipseLink中不起作用

侯赛姆·巴德里(Houssem Badri)

我只是想清除实体管理器的持久性上下文,以便从数据库中重新加载所有数据,特别是在该方法中:

public MyEntity find(Object id) {
    EntityManager em = getEntityManager();
    EntityTransaction tx = em.getTransaction();
    tx.begin();
    em.flush();
    tx.commit();
    em.clear();
    return em.find(MyEntity .class, id);
}

但这似乎flush()无法正常工作,因为当我插入一个OtherEntity并执行该方法时,在持久性上下文中按getCollection()方法找不到它(仅在重新启动我的应用程序之后)。

侯赛姆·巴德里(Houssem Badri)

我找到了答案:

@Override
public MyEntity find(Object id) {
    EntityManager em = getEntityManager();
    MyEntity ps = em.find(MyEntity .class, id);
    em.refresh(ps);
    return ps;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

JPA与EclipseLink ManyToMany关系不起作用

Flush()不起作用

JPA @OrderBy 在 @ElementCollection 中不起作用

$(this)和find在JQuery中不起作用

从Python 2.7.6中的stdin读取。Sys.stdout.flush()和python -u不起作用

Clear-Variable在功能中不起作用

K.clear_session()在Colab中不起作用

Spring JPA 中的 LIKE COALESCE 不起作用

findByAll(),findBy {columnName}在Spring数据JPA中不起作用

JPA存储库中的OneToMany deleteById方法不起作用

$ filter在使用MySQL的JPA / Olingo 2.0.11中不起作用

Spring Data JPA智能在Intellij中不起作用

@Param在Spring Data JPA中不起作用

QuerydslBinderCustomizer在Spring Data JPA 2.0.7中不起作用

事务注释在使用JPA的Spring Boot中不起作用

在Spring Data JPA中不起作用查询

PostgreSQL 联合查询在 JPA 中不起作用

@ManyToOne Unidiretional 在 Spring JPA DATA 中不起作用

Selenium sendKeys和clear在Safari 11中的Kendo自动完成字段上不起作用

模板中的href和网址在Django中不起作用

$和$ elem中的$ Match在Meteor中不起作用

stepUp和stepDown在Edge和IE中不起作用

<frameset>和<frame>在Chrome和Firefox中不起作用

嵌套map()和find()在express +猫鼬中不起作用,但在codeandbox中起作用

cURL命令在git bash中起作用,但在cmd和powershell中不起作用

POST 和 PUT 方法在 Postman 中不起作用,但在 Swagger 中起作用

Python IIS在FireFox中不起作用,但在IE和Chrome中起作用

JavaScript在Internet Explorer和Firefox中不起作用,但在Google中起作用

JPA存储库中的特殊词,例如“和”,“或”不起作用