您可能想要这样的东西:
@Configurationpublic class MyConfiguration { @Bean public Map<ColourEnum, ColourHandler> colourHandlers() { Map<ColourEnum, ColourHandler> map = new EnumMap<>(); map.put(WHITE, whiteHandler()); // etc return map; } @Bean public ColourHandler whiteHandler() { return new WhiteHandler(); }}如果需要将处理程序保持为
@Components,则可以将它们自动连接到配置类中:
@Configurationpublic class MyConfiguration { @Autowired private WhiteColourHandler whiteColourHandler; @Bean public Map<ColourEnum, ColourHandler> colourHandlers() { Map<ColourEnum, ColourHandler> map = new EnumMap<>(); map.put(WHITE, whiteColourHandler); return map; }}


