①@Autowired、@Resource、@Inject
②@Autowired是Spring提供的注解,默认的注入方式是byType根据类型匹配,支持在构造函数、属性、方法和参数上使用。@Resource是jdk提供的注解,默认的注入方式是byName根据名称匹配,支持在属性和方法上使用,但不能在构造函数和参数上使用。
如果一个接口存在多个实现类,@Autowired和@Resource都需要通过名称才能正确匹配到对应的Bean,@Autowired可以通过@Qualifire注解来显式地指定名称,@Resource可以通过name属性来显式地指定名称。
在Spring框架中更推荐使用@Autowired,因为它是Spring框架提供的注解,与Spring框架紧密集成,更加灵活强大。