lombok的Setter方法

来源:7-15 【单元测试】采集集成单元测试

慕慕2853146

2023-11-02

@Setter(onMethod_ = @Autowired)
private QueryTableBusiness queryBusiness;

@Setter(onMethod_ = @Autowired)
private DateMetaBusiness dateMetaBusiness;

@Setter(onMethod_ = @Autowired)
private QueryAssetBusiness queryAssetBusiness;

为什么不直接使用@Autowired?

写回答

1回答

Tim老师

2023-11-02

直接使用autowired没问题,但是这个注解因为是spring提供的,idea估计认为和容器太过于耦合,以后换其它容器不好切换,所以会提示一个下划线,这个有强迫症的人都不太舒服。所以我们用setter注解,在自动生成set方法的时候,给set方法加上autowired注解来避免这个下划线提示。其实个人觉得更好的方式是加上resouce注解,因为他是Java的规范,避免容器侵入性过强,编码习惯。当然构造函数注入也是比较推荐的,既避免了侵入,而且直观显示依赖,但是写的代码有点多,所以这种方式我在课程里面也写过,是比较推荐的
0
0

SpringBoot3.0 + RocketMq 构建企业级数据中台

SpringBoot3.0 + RocketMq 构建企业级数据中台

201 学习 · 63 问题

查看课程