MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Spring Data MongoDB comment attribuer un délai d'expiration par programme

Vous pouvez le faire en utilisant @Indexed expireAfterSeconds de l'annotation attribut sur un champ dont le type est Date .En gros :

@Document
public class SomeEntity {

    String id;

    @Field
    @Indexed(name="someDateFieldIndex", expireAfterSeconds=3600)
    Date someDateField;

   // rest of code here

}

Soit en manipulant un MongoTemplate :

mongoTemplate
    .indexOps(SomeEntity.class)
    .ensureIndex(new Index().on("someDateField", Sort.Direction.ASC).expire(3600));