对象注入(依赖装配):更加简单的读取Bean(是从Spring容器中读取某个对象,放到当前类中)
1.属性注入

优点:简单
缺点:没办法实现final修饰的变量注入;兼容不好,适用IoC;写法简单,违背单一设计原则的概率大;
2.Setter注入

优点:更符合单一设计原则
缺点:不可注入不可变即final修饰的变量;使用setter注入的对象可能会被修改;
3.构造方法注入(官方推荐)

如果当前类中只有一个构造方法,那么@Autowired可以省略;
优点:可注入不可变对象(final修饰的对象可以直接赋值,也可以在构造方法里赋值);
注入的对象不会被改变(构造方法只能执行一次);
构造方法注入可保证注入对象完全被初始化;
兼容性更好;
@Resource注入,不支持构造方法注入
@Autowired注入,不支持重命名;

文章探讨了Spring框架中三种对象注入方式的优缺点:属性注入简单但不适用于final变量;Setter注入遵循单一设计原则但对象可能被修改;构造方法注入是官方推荐的方式,适合注入不可变对象并确保对象初始化。@Autowired和@Resource注解分别有不同的用法和限制。

被折叠的 条评论
为什么被折叠?



