我正在使用Spring Boot来访问我的MongoDB数据库。我有一个名为User的实体和一个UserRepository来进行CRUD操作。我希望每次添加用户时,它都会添加创建和更新日期。 使用传统的SQL数据库和JPA,我会使用@PrePersist和@PreUpdate。
在这种情况下,最好的方法是什么?
我粘贴下面的用户代码(但它非常简单):
public class User {
@Id
public String id;
public String username;
public String password;
}
UserRepository:
@RepositoryRestResource(collectionResourceRel = "users", path="users")
public interface UsersRepository extends MongoRepository<User, String>{
public User findByUsername(String username);
}
答案 0 :(得分:1)
您必须启用审核功能并更新User
域对象。
添加joda-time
maven依赖。
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.9.9</version>
</dependency>
在弹簧配置中启用审核支持。
<mongo:auditing />
在User
中再添加2个属性。
@CreatedDate
private DateTime createdOn;
@LastModifiedDate
private DateTime updatedOn;
请注意,只有在设置了Id字段时才会首次添加createdOn
。