Java Spring Solr数据-动态字段的自定义转换器

Java Spring Solr数据-动态字段的自定义转换器,java,spring,solr,spring-data,spring-data-solr,Java,Spring,Solr,Spring Data,Spring Data Solr,我在Solr中有一些字段,我目前正在映射到Java,如下所示: @Field(“file_*”)@动态私有最终地图fileDetails; 这与许多动态字段相匹配,如: file_name_1 file_type_1 file_size_1 ... file_name_2 file_type_2 file_size_2 ... ... 然后,我将fileDetails映射转换为FileAttachments对象,以便在代码中的其他地方使用 这导致该类具有一些特定代码,用于将数据如何存储在So

我在Solr中有一些字段,我目前正在映射到Java,如下所示:

@Field(“file_*”)@动态私有最终地图fileDetails;
这与许多动态字段相匹配,如:

file_name_1
file_type_1
file_size_1
...
file_name_2
file_type_2
file_size_2
...
...
然后,我将
fileDetails
映射转换为
FileAttachments
对象,以便在代码中的其他地方使用

这导致该类具有一些特定代码,用于将数据如何存储在Solr中转换为POJO

理想情况下,我希望更像这样映射:

@字段(“文件”)私有最终文件附件;
或者更好(但可能更难实现):

@Field(“文件”)私有最终列表附件;
然后(除了注释之外),该类对数据如何存储在Solr中一无所知

但是,问题是,当我尝试为字段()使用自定义转换器时,转换器不会传递一个
Map
实例,该实例保存所有与
file.*
匹配的字段,而只是传递一个
String
实例,该实例保存与模式匹配的第一个字段的值

有没有办法让它通过
映射
实例,或者有没有其他方法让这个转换在类外发生

在理想情况下,我会将solr文档更改为子对象(好吧,它们的列表),但这是不可能的,因为它是遗留系统的一部分