entityManager.merge() 后虚拟列字段未更新

virtual column field not updated after entityManager.merge()

我在更新 Person 实体时遇到以下情况..

我的初始实体:

更新实体:

        person.setFirstName("a");
        person.setPreferredFirstName("b");

现在当我这样做时 em.merge(person); firstNamepreferredFirstName 被更改为 a 和 b。但是 person 实体中的 name 字段仍然包含“y”

我试过了:

  1. 同花顺
  2. em.find(人, id)
  3. 刷新

None 其中似乎有效。

有没有更好的方法来获取虚拟列的更新值?

做 em.flush() 然后 em.refresh() 做到了。