什么是 MongoManagedTypes - spring-data-mongodb 版本 4.0 中的新功能

问题描述 投票:0回答:0

MyMongoConfig extends AbstractReactiveMongoConfiguration
我在使用spring-data-mongodb 3.2版本时创建了一个bean:

@Override
public MongoMappingContext mongoMappingContext(MongoCustomConversions customConversions) throws ClassNotFoundException {
    return super.mongoMappingContext(customConversions);
}

升级到4.0版本后需要修改为:

@Override
public MongoMappingContext mongoMappingContext(MongoCustomConversions customConversions, MongoManagedTypes types) {
    return super.mongoMappingContext(customConversions(), types);
}

但这会出错,因为未设置

MongoManagedTypes
。什么是
MongoManagedTypes
,我们如何设置它们?

当 beans 初始化时,

types
的大小为 0,我收到一条错误消息:

Factory method 'mongoMappingContext' threw exception with message: Error creating bean with name 'customConversions' defined in class path resource 
factory bean 'MyMongoConfig'; factory method 'customConversions()'. Check that a method with the specified name exists and that it is non-static.

但是,customConversion() 在升级到版本 4.0 之前有效

编辑:在此提交中完成了从不需要 MongoManagedTypes 到需要它的更改: https://github.com/spring-projects/spring-data-mongodb/commit/cfd55be95bf7bf70bc1fdf243209591c0b0c4d5b 在 java/org/springframework/data/mongodb/config/MongoConfigurationSupport.java

相关问题:https://github.com/spring-projects/spring-data-mongodb/issues/4365

spring-boot spring-data-mongodb spring-data-mongodb-reactive
© www.soinside.com 2019 - 2024. All rights reserved.