我从事一个扩展 SimpleMongoFactory 以实现多租户的项目
public class MultiTenantMongoFactory extends SimpleMongoDbFactory {
从 Spring boot 2.1.10 迁移到 2.2.1 后,我们尝试使用推荐的类来修复弃用警告
简单MongoClientDbFactory
编译和应用程序运行良好,但集成测试被破坏。
我的分析是自动配置类EmbeddedMongoAutoConfiguration代码:
@ConditionalOnClass({ MongoClient.class, MongoClientFactoryBean.class })
static class EmbeddedMongoClientDependsOnBeanFactoryPostProcessor
extends MongoClientDependsOnBeanFactoryPostProcessor {
EmbeddedMongoClientDependsOnBeanFactoryPostProcessor() {
super(MongodExecutable.class);
}
}
哪个会打电话:
super(MongoClient.class, MongoClientFactoryBean.class, dependsOn);
仅适用于已弃用的 com.mongodb.MongoClient,不推荐使用 com.mongodb.client.MongoClient
这不是 EmbeddedMongoAutoConfiguration 可能与推荐类兼容的问题吗?
尝试 mongoDB 的新 API:SimpleMongoClientDatabaseFactory