Java 在PostPersist事件方法中更新JPA实体
我想更新Java 在PostPersist事件方法中更新JPA实体,java,jpa,persistence,Java,Jpa,Persistence,我想更新@PostPersist方法中的实体,以获取生成的ID并将其放入同一表中的另一列: @PostPersist public void postPersist(Customer customer) { customer.setCode("Code_" + customer.getId); } 此更新不会持久保存在数据库中。因此,我应该使用附加到生成Id的字符串“Code”更新实体。@postPersist和@PrePersist都是回调方法。它们在JPA事务之后
@PostPersist
方法中的实体,以获取生成的ID并将其放入同一表中的另一列:
@PostPersist
public void postPersist(Customer customer) {
customer.setCode("Code_" + customer.getId);
}
此更新不会持久保存在数据库中。因此,我应该使用附加到生成Id的字符串“Code”更新实体。
@postPersist
和@PrePersist
都是回调方法。它们在JPA事务之后执行。
在您的情况下,您可以:
persist
方法之后手动设置code
,并使用此code
@PostPersist
注释,但在这种情况下,您还需要另一个保存请求自定义生成器
,则可以在保存()之前获取id
我会选择第三种选择,非常感谢@Volodya