spring再学习(二)---注解详解(更新中)

前言

spring注解也是重要的一部分,当然我不想要一次性的把所有注解都去笼统的看一遍,我想要深入的了解各个注解的使用原理。
所以会将我想要去了解的,并且了解到的内容都更新的这里

@Autowired

这个注解是spring 中最常使用的注解之一

  • 它是一个自动装配的注解
  • 它会将bean注入改属性中
  • 它的注入方式是 ByType

原理:

在容器启动,为对象赋值的时候,@Autowired会用后置处理器机制,来创建改属性的实例,再通过反射机制赋值

可能出现的问题与解决方法:

问题:

  • @Autowired 是通过类型赋值的,所以他也具有该赋值赋值方式的缺陷,当spring容器中有该类型的多个bean,那么它就会报错
  • 例如:UserService有两个实现类
    UserServiceImpl1和UserServiceimpl2

解决方法:

  • 1、通过@Qualifier(value = ‘userServiceImpl1’)指定需要注入的类
  • 2、使用@Resource注解(这个也是常用注解,后面在详解)

你可能感兴趣的:(spring)