2

背景: 我想获取模型的一部分而不包含该文档中的所有字段。

问题:所有字段都包含在响应模型中。即使它们为空,它们也在那里。

问题:如何从响应模型中完全排除字段?

模型:

@Document
public class Business {
    @Id
    private String id;
    private String title;
    private Location location;
    private String image;
    //Getters and setters
}

存储库:

 public List<Business> findAllMapPinsByLocation(Circle circle) {
    Query query = new Query();
    query.fields().include("location");
    query.addCriteria(Criteria.where("location").withinSphere(circle));
    return mongoTemplate.find(query, Business.class, "business");
  }

回复:

[{
    "id": "57fcb673531ff7432e0edf97",
    "title": null,
    "location": {
        "longitude": 14.026884101506173,
        "latitude": 66.11196822800929
    },
    "image": null,
}]

这就是我希望响应的样子。从模型中删除所有没有 id 和 location 的字段:

[{
    "id": "57fcb673531ff7432e0edf97",
    "location": {
        "longitude": 14.026884101506173,
        "latitude": 66.11196822800929
    }
}]
4

0 回答 0