谈谈如何优雅的使用@Autowired

本文围绕Spring的依赖注入展开,介绍了Spring IOC(控制反转)能节省开发时间、实现解耦。重点阐述了依赖注入的几种实现方式,包括@Autowired(可按类型、名称查找,能与@Qualifier连用)、@Resource(可按名称、类型注入)以及@RequiredArgsConstructor(构造方法注入)。

1. 引言

谈到@Autowired,大家都会首先想起springIOC容器的依赖注入几个字。

注:springIOC又叫控制反转,将原本需要我们自己管理的对象与对象之间的关系,交给spring容器来管理,我们只需要将类作为属性添入到目标类中即可,无需自己通过new关键字新建或是通过set或构造方式将类手动注入进来,就可以调用其方法,进而不但节省了开发时间,同时达到了解耦的目的。

2. 依赖注入的几种实现方式

2.1 @Autowired

  • byType:首先通过类型查找
  • byName :若存在两个及以上同类的,则根据名子查找
  • 可与@Qualifier连用,指定使用哪个名子的bean
    @Autowired
    @Qualifier(value = "basicController")
    BasicController basicController;

2.2 @Resource

  • byName
  • byType
  • 自身可指定要注入的
    @Resource(name = "basicController")      
    BasicController basicController;

2.3 @RequiredArgsConstructor

当你使用@Autowired,回发现官方不推荐,推荐使用构造方法注入,可以使用lombok提供的注解@RequiredArgsConstructor

@Controller
@RequiredArgsConstructor
public class PathVariableController {
    
    private final BasicController basicController;

}
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值