我的 JPA 实体如下所示。
Employee{
String name;
String address;
String phoneNumber;
Date joiningDate;
boolean isActive;
}
我发现我们在地址、名称表中插入了错误数据,例如错误字符\u000b(换行符)。我想一般性地处理此问题,以便在插入之前清理数据。 我想在 dao 层处理,因为这会从很多地方调用,因此想在一个中心位置处理。像 AOP 这样的东西 我正在做
employeeDao.save(employee);
然后执行employee.merge();
最佳答案
您可以向实体添加使用 @PrePersist 或 @PreUpdate 注释的方法来清理数据。每次插入或更新之前都会自动调用该方法。
import javax.persistence.Entity;
import javax.persistence.PrePersist;
import javax.persistence.PreUpdate;
@Entity
public class MyEntity{
@PrePersist
@PreUpdate
private void cleanup() {
...correct your data here...
}
}
关于java - 在插入表之前清理数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42966113/