Spring 如何根据MongoAction的某些属性为不同的条件设置不同的WriteConcern?
根据MongoAction的某些条件设置不同WriteConcern值的可能方法是什么? 例如,我想如果MongoAction包含一些值,比如“ABD”,我想应该没有WriteConcern。如果它包含“PAYMENT”,那么WriteConcern应该是安全的。Spring 如何根据MongoAction的某些属性为不同的条件设置不同的WriteConcern?,spring,mongodb,java-8,spring-data-mongodb,Spring,Mongodb,Java 8,Spring Data Mongodb,根据MongoAction的某些条件设置不同WriteConcern值的可能方法是什么? 例如,我想如果MongoAction包含一些值,比如“ABD”,我想应该没有WriteConcern。如果它包含“PAYMENT”,那么WriteConcern应该是安全的。 我可以实现这一点的可能情况有哪些?可以通过执行WriteConcernResolver并覆盖解析方法来实现上述操作,如下所示: class MyAppWriteConcernResolver implements WriteConce
我可以实现这一点的可能情况有哪些?可以通过执行
WriteConcernResolver
并覆盖解析方法来实现上述操作,如下所示:
class MyAppWriteConcernResolver implements WriteConcernResolver {
@Override
public WriteConcern resolve(MongoAction action) {
if (action.getEntityClass().getSimpleName().contains("ADB")) {
return WriteConcern.NONE;
} else if (action.getEntityClass().getSimpleName().contains("PAYMENT")) {
return WriteConcern.SAFE;
}
return action.getDefaultWriteConcern();
}
}
传入的参数
MongoAction
,用于确定要使用的WriteConcern
值MongoAction
包含要写入的集合名称、POJO的java.lang.Class
、转换的DBObject
、以及作为枚举的操作(MongoAction操作
:删除
、更新´、`INSERT
、插入列表
、保存
)和其他一些上下文信息。好的!我想您可以提到,这样的一个实例需要在MongoTemplate
上配置。这是如何使用的???