相关疑难解决方法(0)

Hibernate @PreUpdate:检查已更改的内容

问题: 如何检查用 注释的方法内哪些字段已更改@PreUpdate


可选:如果上述问题的答案是“不可能,那么也许还有其他方法可以解决我的问题”

我希望modified Tourist每次更改其中的内容时自动更新的字段。

除了我们只修改的情况location。意味着如果我们location只改变——它应该被坚持,但modified不能改变。

已经存在的代码:

@Entity
public class Tourist {

  private long id;
  private String firstName;
  private String lastName;
  private Date created;
  private Date modified;
  private String location;

  @PreUpdate
  public void preUpdate() {
     modified = new Date(); //PROBLEM : change modified even if only location field has been changed!
  }   
  ....
}
Run Code Online (Sandbox Code Playgroud)

更新:经过一些调查,我发现我可以在拦截器的帮助下解决它(扩展EmptyInterceptor):

public class TouristInterceptor extends EmptyInterceptor{

    Session session;
    private Set updates …
Run Code Online (Sandbox Code Playgroud)

java hibernate

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

hibernate ×1

java ×1