zoukankan      html  css  js  c++  java
  • 一个接口有2个不同的实现,如何Autowire某一个指定的实现

    一个接口

    public interface AServlce{

      public ADao getAId(Long id);

    }

    俩个实现

    @Service("service")

    public class AImpl implements AServlce{

      public ADao getAId(Long id){

        return new ADao();

      }

    }

    @Service("service1")

    public class AImpl implements  AServlce{

      public ADao getAId(Long id){

        return new ADao();

      }

    }

    调用代码

    @Controller

    @RequestMapping("/")

    public class AControl{

      @AutoWired

      AServlce aServlce;

      @RequestMapping("/")

      public void fun(HttpServletRequest request,HttpServletResponse response){

        略...

      }

    }

    这样是错误的,该接口不知道映射哪个实现类。所以用到@Qualifier注解。

    @Controller

    @RequestMapping("/")

    public class AControl{

      @AutoWired

      @Qualifier("service")

      AServlce aServlce;

      @RequestMapping("/")

      public void fun(HttpServletRequest request,HttpServletResponse response){

        略...

      }

    }

  • 相关阅读:
    sqlsever2008及以上各个安装包的说明
    解决 windows2012 下无法安装 sql2008R2
    dapper extensions (predicates)
    Dapper full example
    Dapper.ColumnMapper 的使用
    wms
    大端格式 与 小端格式
    mysql数据库引擎
    事务
    MySQL索引底层实现
  • 原文地址:https://www.cnblogs.com/vlsion/p/8668440.html
Copyright © 2011-2022 走看看