2017-04-07 128 views
1

我试图spring-data-restspring-data-mongo和许多事情开箱即用,包括支持eTag领域。 @EnableMongoAuditing注释非常适用于创建文档时,设置了@CreatedDate@LastModifiedDate字段。@CreatedDate字段与弹簧数据更新弹簧数据mongodb休息

问题是在更新期间@CreatedDate字段被设置为空。我发现了一个未解决的问题Mongo Auditing:@CreatedDate field gets set to null on updates with Spring Data Rest以及使用@JsonIgnore注释的建议解决方法,该注解不适用于我。

在几年前还有一个similar question没有解决方案。

我使用的弹簧数据休息

是否有这个问题的解决方案的弹簧数据蒙戈的1.10.1RELEASE版本和2.6.1Release?只为不可变的实体(你不打算更新)

如果实体是可更新的

回答

0

创建日期是有意义的,想用而不是

只有最后一次修改任何其他情况下可能使使用感一些历史考试日志..

@Entity 
    // ... 
    public class MyEntity { 
    // ... 
    @CreatedDate 
    private LocalDateTime createdAt; // modifiedAt 

    @PreUpdate 
    public void fixSpringDataRestNullDate() { 
     createdAt = LocalDateTime.now(); 
    } 
    }