Spring注解开发

注解开发

注解开发定义bean
  • 使用@Component定义bean
    Spring注解开发_第1张图片
  • 核心配置文件中通过组件扫描加载bean
    在这里插入图片描述
  • Spring提供@Component注解的三个衍生注解
    • @Controller:用于表现层bean定义
    • @Service:用于业务层bean定义
    • @Repository:用于数据层bean定义

Spring注解开发_第2张图片

纯注解开发
  • Spring3.0升级了纯注解开发模式,使用Java类代替配置文件,开启了Spring快速开发赛道

  • Java类代替Spring核心配置文件
    Spring注解开发_第3张图片

  • @Configuration注解用于设定当前类为配置类

  • @ComponentScan注解用于设定扫描路径,此注解只能添加一次,多个数据请用数组格式
    在这里插入图片描述

  • 读取Spring核心配置文件初始化容器对象切换为读取Java配置类初始化容器对象

在这里插入图片描述

小结

Spring注解开发_第4张图片

注解开发bean作用范围与生命周期管理(bean管理)

bean作用范围
  • 使用@Scope定义bean的作用范围
    Spring注解开发_第5张图片

  • 使用@PostConstruct、@PreDestroy定义bean生命周期

Spring注解开发_第6张图片

Spring注解开发_第7张图片

注解开发依赖注入(自动装配)

  • 使用@Autowired注解开启自动装配模式(按类型)
    Spring注解开发_第8张图片

  • 注意:自动装配基于反射设计创建对象并暴力反射对应属性为私有属性初始化数据,因此无需提供setter方法

  • 注意:自动装配建议使用无参构造方法创建对象(默认),如果不提供对应构造方法,请提供唯一的构造方法

  • 使用@Qualifier注解开启指定名称装配bean
    Spring注解开发_第9张图片

  • 注意:@Qualifier注解无法单独使用,必须配合@Autowired注解使用

  • 使用@Value实现简单类型注入

Spring注解开发_第10张图片

加载properties文件
  • 使用@PropertySource注解加载properties文件

Spring注解开发_第11张图片

  • 注意:路径仅支持单一文件配置,多文件请使用数组格式配置,不允许使用通配符*

Spring注解开发_第12张图片

第三方bean管理

第三方bean管理
  • 使用@Bean配置第三方bean
    Spring注解开发_第13张图片

  • 使用独立的配置类管理第三方bean
    Spring注解开发_第14张图片

  • 将独立的配置类加入核心配置

  • 方式一:导入式
    Spring注解开发_第15张图片

  • 使用@Import注解手动加入配置类到核心配置,此注解只能添加一次,多个数据请用数组格式
    Spring注解开发_第16张图片

  • 方式二:扫描式
    Spring注解开发_第17张图片

  • 使用@ComponentScan注解扫描配置类所在的包,加载对应的配置类信息
    Spring注解开发_第18张图片

第三方bean依赖注入

  • 简单类型依赖注入
    Spring注解开发_第19张图片

  • 引用类型依赖注入
    Spring注解开发_第20张图片

  • 引用类型注入只需要为bean定义方法设置形参即可,容器会根据类型自动装配对象

Spring注解开发_第21张图片

注解开发总结

XML配置与注解配置比较

Spring注解开发_第22张图片

你可能感兴趣的:(Spring,spring,java,后端,注解开发)