自己之前使用时,都是注解方式,最近复习spring基础时才注意到这个问题。
借助搜素引擎,从网上搜罗了下不同的观点。
02,单纯从名字上解释的话:依赖注入是你依赖什么类,我给你注入进去,不需要你自己写这个类的初始化代码了。装配是注入的另一种说法,把依赖注入进去实际就是在做装配的工作。自动装配,是在简化装配的过程,你写一个配置文件,规定A注入给B、C注入给D是依赖注入,但是如果每个类都写,就不是自动装配,而是手动装配。自动装配是A声明自己提供A,B需要A的时候我自动帮你注进去。打个比方,依赖注入就是给养鸡场的每只鸡喂食,自动装配就是喂食是通过自动化的传送带来完成的。
见:https://www.zhihu.com/question/446076961
03,一般不推荐使用,因为它的模糊度太大,如果出现了两种同一类型的它不知道要找那一个,作为了解就好。重点是我们平时需要用到的基本数据类型与String字符串类型、String的字面量不可以进行自动装配。
见:https://blog.csdn.net/springlsl/article/details/107084165
个人见解:
自动装配:针对的是一个类下的所有属性(所以可能是多个),所以是一次批量操作(多个)。
依赖注入:针对的类的一个特定属性,所以是一次操作(一个)。
简单来说把自动装配视为:一组“依赖注入”。
纯属拙见,若有不同意见,欢迎沟通。
不过这个其实也没必要太纠结,因为自动装配的实际使用的并不多,最常用的还是注解方式进行注入,明确且灵活。