下面是出现问题的与RestApi相关的代码片段:
Controller中一个接口方法:
@RequestMapping(value = "/employees")
public ResponseEntity<EmployeeListVO> getAllEmployees()throws CloneNotSupportedException{
EmployeeListVO employeeListVO;
employeeListVO=(EmployeeListVO)EmployeeDB.getEmployeeList().clone();
return new ResponseEntity<>(employeeListVO,HttpStatus.OK);
}
EmployeeListVO.class:
public class EmployeeListVO implements Serializable,Cloneable {
List<EmployeeVO>employees
= new ArrayList<>();
List<EmployeeVO>getEmployees(){
return employees;
}
public void setEmployees(List<EmployeeVO>employees){
this.employees = employees;
}
}
问题代码出现在EmployeeListVO.class中:
我推测的原因是由于对于employees的getter方法不是public的,返回对象的时候springboot找不到此方法因此其中值自然为空;本人新手未研究源码,如果有知道的大佬还望赐教。
附:
public – accessible everywhere
protected – accessible in the same package and in sub-classes
default – accessible only in the same package
private – accessible only in the same class