如何在Spring Java Based Configuration中正确配置列表,映射和设置

时间:2013-03-02 23:25:35

标签: java spring

如何在基于Spring的配置中实现此目的。

<util:list id="abcHandlersList">
            <ref bean="aHandler" />
            <ref bean="bHandler" />
            <ref bean="cHandler" />
    </util:list>

我想要实现的场景。我有一个不同的paymentHandler,例如Paypal,CreditCard和DebitCard。在我的服务中,我将获得一个处理程序列表并迭代以找到合适的处理程序来处理我的付款。如果您能帮助我使用基于Java的Spring配置,我将非常感激。

提前致谢

1 个答案:

答案 0 :(得分:3)

我没有在Java Based配置中看到任何支持列表,地图等的注释

您需要在Configuration类中创建列表和地图,例如

@Bean
  public List<String> abcHandlersList(){
      List<String> abcHandlers = new ArrayList<>();
      abcHandlers.add(AHandler1());
      abcHandlers.add(BHandler1());
      return abcHandlers ;
 }

  @Bean
    public AHandler AHandler1(){
            return new AHandler();
    }

  @Bean
    public BHandler BHandler1(){
            return new BHandler();
    }

您可以将列表添加到bean,其他方式如

@Resource(name="abcHandlersList") 
  public void setHandlers(List<String> handlers) {
      this.handlers = handlers;
  }

@Resource(name="abcHandlersList")
private List<String> handlers;