数组类型在Getmapping请求中返回null

时间:2019-06-02 07:33:01

标签: java mongodb rest spring-boot

我有一个具有List <> type属性的类。当我使用邮递员List <>执行@GET请求时,type属性返回null,而其他属性返回数据。

我正在使用MongoRepository实现Springboot rest api。它有一个名为Course的类,该类的List类型包括称为subjectID的字符串。我实现了一个简单的@GetMapping请求,以查看是否所有数据都可以正常获取。但是,当获取所有其他属性时。subjectID为null

@Document(collection = "courses")
public class Course {

private String name;
private String code;
private int passmark;

private List<String> subjectlist;



public Course() {}

public Course(String name, String code, int passmark, List<String> 
subjectlist) {

    this.name = name;
    this.code = code;
    this.passmark = passmark;
    this.subjectlist = subjectlist;
}
public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public String getCode() {
    return code;
}
public void setCode(String code) {
    this.code = code;
}
public int getPassmark() {
    return passmark;
}
public void setPassmark(int passmark) {
    this.passmark = passmark;
}
public List<String> getSubjectlist() {
    return subjectlist;
}
public void setSubjectlist(List<String> subjectlist) {
    this.subjectlist = subjectlist;
}


}



@RestController
@RequestMapping("/course")
public class CourseController {

private CourseRepository courseRepository;
private ArrayList<Course> c;
private Course cs;


public CourseController(CourseRepository courseRepository) {        
    this.courseRepository = courseRepository;
}



@GetMapping("/")
public List<Course> getAll(){
    List<Course> course = courseRepository.findAll();
    return course;
}


}

这是代码应返回的内容

"subjects": ["sa01","ds01"]

但它返回

"subjectlist": null

1 个答案:

答案 0 :(得分:0)

@GetMapping("/")
public List<Course> getAll(){
    List<Course> course = courseRepository.findAll();
    return course;
}

 List<Course> course = courseRepository.findAll();

courseRepository.findAll()也将返回course的列表。 因此您将获得如下的o / p:

 {
   name :"x",
   code  :"y", 
   passmark:"z"
   subjectlist:[a,b,c]
}

如果您希望代码返回"subjects": ["sa01","ds01"],则必须付出额外的努力...