bean的定义

  • 名称:@Component @Controller @Service @Repository
  • 作用:设置该类为spring管理的bean
  • 说明:

    • @Controller、@Service 、@Repository是@Component的衍生注解,功能同@Component

      bean的作用域

  • 名称:@Scope

  • 类型:类注解
  • 位置:类定义上方
  • 作用:设置该类作为bean对应的scope属性

    bean的生命周期

  • 名称:@PostConstruct、@PreDestroy

  • 作用:设置该类作为bean对应的生命周期方法

    加载第三方资源

  • 名称:@Bean

  • 作用:设置该方法的返回值作为spring管理的bean

    bean的非引用类型属性注入

  • 名称:@Value

  • 作用:设置对应属性的值或对方法进行传参
  • 说明:

    • value值仅支持非引用类型数据,赋值时对方法的所有参数全部赋值
    • value值支持读取properties文件中的属性值,通过类属性将properties中数据传入类中
    • value值支持SpEL
    • @value注解如果添加在属性上方,可以省略set方法(set方法的目的是为属性赋值)

      bean的引用类型属性注入

  • 名称:@Autowired、@Qualifier

  • 作用:设置对应属性的对象或对方法进行引用类型传参
  • 说明:

    • @Autowired默认按类型装配,指定@Qualifier后可以指定自动装配的bean的id

      初始化过程

  • 在spring中,在一个bean的初始化过程中,方法执行先后顺序为Constructor > @Autowired > @PostConstruct

  • @PostConstruct
    • 作用:初始时会执行该方法