写在前面:2020年面试必备的Java后端进阶面试题总结了一份复习指南在Github上,内容详细,图文并茂,有需要学习的朋友可以Star一下!
GitHub地址:https://github.com/abel-max/Java-Study-Note/tree/master
最近看同事的代码时候,学到了个小技巧,在某些场景下非常挺有用的,这里分享一下给大家。
Spring 中 @Autowired 注解,大家应该不会陌生,用过 Spring 的肯定也离不开这个注解,通过这个注解可以帮我们自动注入我们想要的 Bean。
除了这个基本功能之外, @Autowired 还有更加强大的功能,还可以注入指定类型的数组,List/Set 集合,甚至还可以是 Map 对象。
比如说当前应用有一个支付接口 PayService ,分别需要对接支付宝、微信支付、银行卡,所以分别有三个不同实现类 AliPayService , WechatPayservice , BankCardPayService 。
四个类的关系如下图所示:
如果此时我需要获取当前系统类所有 PayService Bean,老的方式我们只能通过 BeanFact