我正在阅读Spring教程,发现下面的代码片段:
public class EmployeeRestController {
private Logger logger = LoggerFactory.getLogger(EmployeeRestController.class);
@Autowired
private EmployeeService employeeService;
public void setEmployeeService(EmployeeService employeeService) {
this.employeeService = employeeService;
}
}
我的问题是,即使没有调用此方法,为什么也要使用此方法:
public void setEmployeeService(EmployeeService employeeService) {
this.employeeService = employeeService;
}
谢谢
最佳答案
我相信,如果您使用spring依赖注入来设置对类属性的依赖,则此setter方法没有任何意义。这是通过对员工服务属性EmployeeRestController
使用@Autowired
批注对private EmployeeService employeeService;
进行的操作,您还可以通过以下方式使用setter级别依赖项注入
@Autowired
public void setEmployeeService(EmployeeService employeeService) {
this.employeeService = employeeService;
}
在setter上使用
@Autowired
而不是私有属性是一个很好的建议做法。