推荐一种Bean注入方式——开发经验

我们都知道三种Bean注入的方式分别是属性注入,setter方法注入,构造器注入。这三种Bean注入的方式各有优缺点,但是相对来说更推荐使用构造器注入的方式。

1、构造器注入的优缺点

优点:
1、可以注入不可变对象
因为构造方法注入是在构造方法中进行的,而且final修饰的变量在构造方法中可以被赋值,所以说,构造方法注入的方式是可以解决不可变对象依赖注入的问题。
2、对象不可被修改
构造方法注入不会像 Setter 注入那样,构造方法在对象创建时只会执行一次,因此它不存在注入对象被随时(调用)修改的情况。
3、通用性好
构造方法和属性注入不同,构造方法注入可适用于任何环境,无论是 IoC 框架还是非 IoC 框架,构造方法注入的代码都是通用的,所以它的通用性更好。

缺点:

比较麻烦,没有属性注入来的直接简洁。

2、更简洁安全的注入方式

有一种方式融合了两个注入方式的优点:融合了安全性+便捷性。
以前我都是使用的@Resource去注入bean,但是由于JDK17之后@Resource的包位置发生了变化,如果在某些特定时候,可能会导致我们需要一个个的类进行修改import的路径。
所以我推荐使用这种注入的方式:
@RequiredArgsConstructor + private final BeanType beanName;

@RequiredArgsConstructor注解是Lombok中带的注解,使用该注解加上:
private final BeanType beanName;
就可以由构造器注入的方式注入Bean。而且很简洁直接。如下所示:
image.png

  • 11
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东莞呵呵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值