Spring Boot深度实践之自动装配
本文插图
?转载本文需注明出处:微信公众号EAWorld , 违者必究 。
前言:
在Java服务端领域 , Spring框架已是声名远扬 , 人们在使用其强大功能辅助开发的过程中 , 却也渐渐感受到随着项目规模的扩大 , 需要引入的Spring相关配置也越来越多 , 令人不胜其烦 , 而由Pivotal团队基于Spring框架推出的开源轻量级框架Spring Boot , 就很好的解决了Spring时代项目配置繁琐的问题 , 至于Spring Boot是如何做到简化配置的 , 这就引出了我们今天的主题—Spring Boot自动装配 。
目录:
1、什么是自动装配
2、Spring Boot自动装配之前世今生
- Spring Framework手动装配
- Spring Boot自动装配
1.什么是自动装配
在机械制造工程中 , 机器装配的自动化已在多年前运用到实际的生产线上 , 例如 , 生产一台电动机 , 大量的零部件生产出来后 , 如果仍由手工装配 , 则劳动强度大、效率低、质量也不能保证 , 在数控装配机、自动装配线等工业技术问世后 , 大量零件自动装配成一台合格的机器已成为现实 , 毫无疑问 , 机械制造领域的自动装配大大地提升了生产力 。
机械制造工程中的自动装配指的是零件直接自动组装成机器 , 同理 , 软件工程中的自动装配自然指的是软件模块之间的自动组装 , 最终成型一个完整的软件 。
那么在SpringBoot框架中 , 仅通过少量代码 , 就实现了Spring框架各个组件的自动组装 , 一个完整的服务端项目便被轻松构建出来 , 这 , 就是SpringBoot的自动装配 。
2.Spring Boot自动装配之前世今生
Spring Boot的自动装配源于Spring Framework的手动装配 , 在Spring Boot场景下 , 基于约定大于配置的原则 , 实现Spring组件自动装配的目的 。 其中使用了以下前三种Spring Framework手动装配技术:
底层装配技术
- Spring 模式注解装配
- Spring @Enable 模块装配
- Spring 条件装配
- Spring 工厂加载机制
Spring Framework是一个强大的开源轻量级应用开发框架 , 主要用于Java企业开发 。 相信做Java Web开发的同学对它应该比较熟悉 , 那么上述几种Spring Framework的装配方式 , 其具体的使用又是如何呢 , 下面我们会一一介绍到 。
Spring Framework手动装配
本文插图
Spring模式注解装配(Stereotype Annotations)
- 模式注解定义
怎么理解上述模式注解的定义呢 , 通俗的来讲 , 将一个Spring项目比作一座工厂 , 其创建的各种Java对象会被赋予不同的职责(即各种角色) , 这些Java对象就类似于流水线上的各类工人 , 各自负责一小段商品生产任务 。 各种流水线工人的职责可通过不同的工作服来标识 , 而在Spring Framework中 , Java对象的职责则由模式注解来标识 。
本文插图
上图为Spring官方文档中对于模式注解(Stereotype Annotations)的说明 , 可以看到 , @Component作为一种由Spring容器托管的通用模式组件 , 任何被@Component标识的组件均为组件扫描的候选对象 , 包括被@Component元标注的注解 , 当任何组件标识它时 , 也会被视作组件扫描的候选对象 。 以@Service为例 , 我们来看看它的源码:
推荐阅读
- 【】新闻调查:决战深度贫困
- 深度解娱SJ|陈小纭怎么不会知道绿色含义,先暗示自己被绿又出面解释,看不懂
- 央视网|新闻调查:决战深度贫困
- 新闻调查:决战深度贫困
- :iPhone 12不再附送充电器,深度分析苹果为哪般
- 央视网|修村路、建水厂、搬新居……决战“三区三州”深度贫困
- 央视新闻客户端|修村路、建水厂、搬新居……决战“三区三州”深度贫困
- 一个|修村路、建水厂、搬新居……决战“三区三州”深度贫困
- 篮球国度|为什么哈登喜欢威少却讨厌保罗?,深度分析:都是NBA顶级控卫
- 妖怪大邪神「深度评测」 IKKO ITM05 双解码手机耳放
