Skip to content
广告❤️成为赞助商

拦截器

拦截器,会在MongoPlus执行增删改查时,经过拦截器,可以对传入参数进行修改

说明:

使用拦截器时,需要将其注册为SpringBean

com.anwen.mongo.interceptor.Interceptor

  • 该接口是拦截器的接口,所有拦截器都应实现此接口,选择性的实现接口中的方法
  • executeSave(documentList): 添加拦截器方法
  • executeRemove(filter): 删除拦截器方法
  • executeUpdate(queryBasic,updateBasic): 更新拦截器方法
  • executeQuery(queryBasic, projectionList, sortCond): 查询拦截器方法
  • executeAggregate(aggregateConditionList): 管道拦截器方法
  • executeCount(queryBasic,countOptions): 统计拦截器方法
  • executeBulkWrite(writeModelList): 批量操作拦截器方法
  • executeSave(documentList, collection): 添加拦截器方法
  • executeRemove(filter, collection): 删除拦截器方法
  • executeUpdate(queryBasic,updateBasic, collection): 更新拦截器方法
  • executeQuery(queryBasic, projectionList, sortCond, collection): 查询拦截器方法
  • executeAggregate(aggregateConditionList, collection): 管道拦截器方法
  • executeCount(queryBasic,countOptions, collection): 统计拦截器方法
  • executeBulkWrite(writeModelList, collection): 批量操作拦截器方法

示例

首先,需要将拦截器类实现Interceptor接口,并将该类注册为Bean
java
//注册为SpringBean
@Component
public class CustomInterceptor implements Interceptor {}
接下来,选择性的实现Interceptor接口中的方法,就可以对参数进行拦截修改了,这里只实现添加的拦截
java
//注册为SpringBean
@Component
public class CustomInterceptor implements Interceptor {
    @Override
    public List<Document> executeSave(List<Document> documentList) {
        log.info("打印添加传入的值");
        documentList.forEach(System.out::println);
        return documentList;
    }
}