@Qualifier用处

@Qualifier用处

1. @Qualifier作用为限定描述符,用于细粒度选择候选者,说人话就是注入的时候可能发现有多个可注入对象,比如说一个Service接口有3个实现类,分别为impl1,impl2,impl3,你注入service的时候注入的是接口,那么就可以通过@Qualifier(“你要注入的bean的名称”)来选择注入对象。
2. 实例:
Service接口


public interface IMenuService {
	/**
	 * 获取所有菜单列表
	 * 
	 * @return List<MenuEntity>
	 */
	public List<MenuEntity> getAllMenuList();
}

实现类1:

@Service("menuService1")
public class MenuServiceImpl implements IMenuService {
	@Autowired
	private MenuMapper mapper;
	/**
	 * 获取所有菜单
	 */
	@Override
	public List<MenuEntity> getAllMenuList() {
			MenuEntityExample example = new MenuEntityExample();
			long start = System.currentTimeMillis();
			example.setDistinct(false);
			List<MenuEntity> allMneuList = mapper.selectByExample(example);
	}

实现类2:

@Service("menuService2")
public class MenuServiceImpl implements IMenuService {
	/**
	 * 获取所有菜单
	 */
	@Override
	public List<MenuEntity> getAllMenuList() {
			return null;
	}

注入menuService1:

 	@Autowired
    @Qualifier("menuService1")
    private IMenuService menuService;

注入menuService2:

@Autowired
    @Qualifier("menuService2")
    private IMenuService menuService;
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值