监听MongoDB的生命周期,只需重写org.springframework.data.mongodb.core.mapping.event.AbstractMongoEventListener的子类,并在Spring的ApplicationContext中声明这些bean,这样在分派事件时会调用它们。例如:
public class BeforeConvertListener extends AbstractMongoEventListener<Person> {
  @Override
  public void onBeforeConvert(BeforeConvertEvent<Person> event) {
    ... does some auditing manipulation, set timestamps, whatever ...
  }
}
AbstractMappingEventListener中提供了以下回调方法:
| 方法 | 描述 | 
|---|---|
| onBeforeConvert | 调用 MongoTemplate的insert、insertList和save操作,在通过MongoConverter将对象转换为文档之前的处理。 | 
| onBeforeSave | 调用 MongoTemplate的insert、insertList和save操作,在数据库中插入或保存文档之前的处理。 | 
| onAfterSave | 调用 MongoTemplate的insert、insertList和save操作,在数据库中插入或保存文档之后的处理。 | 
| onAfterLoad | 调用 MongoTemplate中的find、findAndRemove、findOne和getCollection方法,从数据库检索文档后的处理。 | 
| onAfterConvert | 调用 MongoTemplate中的find、findAndRemove、findOne和getCollection方法,从数据库检索文档被转换为POJO后的处理。 | 










