拦截器
拦截器,会在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;
}
}