我想不出我的问题的整洁详尽的标题。因此,我会尽量保持清楚。 在spring集成配置的xml中,当转换管理器需要实例化一个转换时,我已经注入了所有的bean(类)。 事实是,我有以下两个转换类:
class MyClass implements Converter<ConversionSourceWrapper<FromTypeClass>, ToTypeClass>
和
class AnotherClass implements Converter<ConversionSourceWrapper<FromAnotherTypeClass>, ToTypeClass> {
其中ToTypeClass是相同的类。
当我来调用第一个时,spring会实例化第二个,因为它只识别其中一个,是同一种转换器,只有T不同(ConversionSourceWrapper
我试图创建一个抽象类来扩展转换器的类,但这不是可行的解决方法。 想不到任何其他解决方案。有提示吗?
编辑 我已经解决了这个问题,创建了一个名为TypeClassSourceWarapper的类,该类扩展了ConversionSourceWrapper。 这样,代码变为:
class MyClass implements Converter<TypeClassSourceWarapper, ToTypeClass>
这样做,ConversionManager将看到另一种类型的Converter类型,并且现在知道要使用哪种类型。