Yaml使用不同的实现自动装配Map <string,interface =“”>

时间:2019-05-04 19:25:19

标签: java spring-boot yaml

我正在尝试使用Yaml和Spring注入地图。 Yaml conf:

project:
   mapType:
      keyString: 
         objetVar1: things
         objectVar2: otherThings 

      keyString2:
         otherObjectVar1: stuff
         otherObjectVar2: otherStuff 

Java代码:

@Component
@ConfigurationProperties("project")
public class Container {
     private Map<String, IType> mapType; 
     .....
} 

我对IType有2种不同的实现,在Yaml中,我试图创建一个包含两者的映射。我一直在尝试使用以下方法在yml文件中添加特定标签 !!com.myproject.TypeImplementation  但我收到argument type mismatch

我也尝试过!com.myproject.TypeImplementation,但是它返回了Invalid tag错误。 如果我不使用Container类中的接口,则该配置有效,但是我真的希望它是通用的。

0 个答案:

没有答案