【发布时间】:2018-07-07 00:15:58
【问题描述】:
我在我的项目中使用 MVC 设计模式,我有一个名为 SchoolRepository 的接口,我有一个控制器类,我在其中声明了学校存储库接口,我也在模型类中声明了学校存储库接口,当我调用时我从控制器编写逻辑的模型类对象我收到空指针异常,因为在服务类中声明的学校接口为空
下面是我的控制器类
@RestController
@RequestMapping("University")
public class Controller{
//interface declaration
@Autowired
SchoolRepository schoolRepository;
@GetMapping("student")
public list getStudent(){
Service s=new Service();
List list=s.getStudents();
return list;
}
.
.
}
下面是我的模型类
public class Service(){
@Autowired
SchoolRepository schoolRepository;
public List getStudents(){
return schoolRepository.getAll();
}
下面是仓库类
@Repository
public interface SchoolRepository extends JpaRepository<School, Long>{}
我在使用 schoolRepository 的服务类中得到一个空点异常,当我使用 System.Out.Println 检查 s.schoolRepository 的值时,我得到空值.. 如何初始化接口以及如何在其中使用它服务等级
【问题讨论】:
-
分别将
@Service和@Repository添加到您的服务和 repo 类中 -
我确实添加了这两个,但我仍然得到相同的空指针异常
标签: java model-view-controller interface autowired