gpt4 book ai didi

java - Eclipselink 未检测到脏实体

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:55:18 25 4
gpt4 key购买 nike

我正在试验 eclipselink。我正在尝试更新数据库中的现有实体。 JPA 实体只有公共(public)字段,并且字段使用 JPA 注释进行注释。该代码使用 EntityManager.find() 加载实体。

该代码创建 JPA 实体的实例,为实体的公共(public)字段赋值并调用 EntityManager.merge(entity) 方法。 Eclipselink 不更新数据库记录。我启用了日志,查看Eclipselink是否发出SQL语句。

Eclipselink 不发出任何更新语句。这是否意味着即使我使用字段持久化,我也不能为实体的公共(public)字段赋值而不是使用 setter 方法?

谢谢,奇尔

最佳答案

Weaving 引入了一些优化,例如 lazy onetoone 和 manytones 以及更改跟踪。这些可以工作的唯一方法是如果您在实体上使用访问器方法,但如果那不是一个选项,您可以根据需要关闭它们。看 http://eclipse.org/eclipselink/documentation/2.4/jpa/extensions/a_changetracking.htm有关更改跟踪的详细信息。

关于java - Eclipselink 未检测到脏实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13121206/

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