Spring Boot 笔记 注解 (三)

Spring Beans 和 依赖注入.

您可以自由地使用任何标准Spring框架技术来定义您的bean和它们 的 bean的 依赖项注入。为了简单起见,我们经常发现使用 @ComponentScan(查找bean) ,使用@Autowired(用于构造函数注入)工作得很好。

如果按照上面的建议构造代码(将应用程序类定位在根包中),则需要可以添加@ComponentScan没有任何参数。所有应用程序组件(@Component,@Service、@Repository、@Controller等)自动注册为Spring bean。

下面的示例显示了一个@Service  Bean,它使用构造函数注入来获取必需的 RiskAssessor Bean.

package com.example.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class DatabaseAccountService implements AccountService {
private final RiskAssessor riskAssessor;
@Autowired
public DatabaseAccountService(RiskAssessor riskAssessor) {
this.riskAssessor = riskAssessor;
}
// ...
}

如果一个bean有一个构造函数,你可以省略@Autowired,如下面的例子所示:

@Service
public class DatabaseAccountService implements AccountService {
private final RiskAssessor riskAssessor;
public DatabaseAccountService(RiskAssessor riskAssessor) {
this.riskAssessor = riskAssessor;
}
// ...
}

提示:注意使用构造函数注入让riskAssessor字段被标记为final,表示它随后无法更改。

扫描二维码关注公众号,回复: 8675358 查看本文章
发布了192 篇原创文章 · 获赞 254 · 访问量 76万+

猜你喜欢

转载自blog.csdn.net/yulei_qq/article/details/88871908