春季启动时的部分响应支持

问题描述 投票:-1回答:1

我正在为项目使用spring boot。响应json包含对象的所有字段,但我只期望我想要的字段。

例如,考虑下面的课程

public class Employee {

private String id;

private String name;

private String address;

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getAddress() {
    return address;
}

public void setAddress(String address) {
    this.address = address;
}

}

和控制器端点,

@GetMapping("/endpoint")
public Employee getEmpDetail() {
    Employee emp = new Employee();
    emp.setId("1");
    emp.setName("Manikandan");
    emp.setAddress("Karur");
    return emp;
}

默认情况下,我们将获取响应中的所有字段,这里我只期待名称字段,当我点击url如localhost:8080 / endpoint?filter = name

spring-boot resttemplate partial-response
1个回答
0
投票

您可以尝试返回类型为ResponseEntity<String>

public ResponseEntity<String> getEmpDetail() {

        Person person = new Person();
        person.setId("1");
        person.setName("AB");
        person.setAddress("Delhi");
        return new ResponseEntity<String>(person.getName(), HttpStatus.OK);
}

您可以根据您的要求过滤响应字符串,例如localhost:8080 / endpoint?filter = name的名称

对于地址,即localhost:8080 / endpoint?filter = address,你可以这样做

return new ResponseEntity<String>(person.getAddress(), HttpStatus.OK);
© www.soinside.com 2019 - 2024. All rights reserved.