【发布时间】:2021-04-15 19:41:44
【问题描述】:
我是 Spring / Spring Boot 的新手,并尝试将服务注入到一个类中。虽然我尝试了一些方法,例如@Autowired,服务实例始终为空并抛出“NullPointerException”错误。我不确定是否需要为 DI 注册此类和服务,但据我所知,在类中使用 @Component 或类似注释时会自动注册。我想我错过了一些点,但还没有发现问题。能否请您看一下代码,让我知道问题或缺失点在哪里?
//@Component // I also tried with this, but employeeService is still null
@Data
@EqualsAndHashCode(callSuper = true)
public class EmployeeRequest extends PageableCriteriaRequest {
@Autowired
public EmployeeService employeeService;
public List<SearchCriteria> getSearchCriteriaList() {
List<int> employees = employeeService.employeeList(); // NullPointerException
//code omitted for brevity
}
}
【问题讨论】:
-
你自己说的,你缺少正确的注释......
-
@Marek 抱歉,我已经使用了
@Component,由于问题中的反引号,它不可见。现在显示出来了。有什么想法吗? -
我认为注释的顺序并不重要。不是吗?
-
@Marek 你能测试一下代码吗?
-
只需按照 Akif Hadziabdic 的说明进行操作,您必须正确注释 EmployeeRequest 和 EmployeeService 类
标签: java spring spring-boot spring-mvc dependency-injection