【问题标题】:Return an empty object Java Spring Boot REST返回一个空对象 Java Spring Boot REST
【发布时间】:2021-08-10 13:12:25
【问题描述】:

我正在编写一个包含用户信息的 dto 类

public class User {
    private String firstName;
    
    private String lastName;

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
}

如果我执行 GET api/v1/user/1,我会收到这个 JSON 对象

{
  firstName: John,
  lastName: Kennedy
}

但是当 firstName 和 lastName 为 null 时,我想接收一个空对象,例如:

{}

为了接收 Json 格式的空对象,您将如何在 Spring Boot 上进行技术处理?

提前谢谢你

【问题讨论】:

    标签: spring-boot


    【解决方案1】:

    您可以尝试使用以下方式注释您的课程:

    @JsonInclude(Include.NON_NULL)
    

    【讨论】:

      【解决方案2】:

      如果您想要一个空对象 { } 并且空请求对您无效,您可以创建一个名为 EmptyObject 或类似名称的辅助类:

      @JsonSerialize
      public class EmptyObject {
      
      }
      

      进入你的控制器:

      return user.getFirstName() == null && user.getLastName() == null ?  
                      ResponseEntity.ok(new EmptyObject()) : ResponseEntity.ok(user);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-07-26
        • 2018-02-13
        • 1970-01-01
        • 2020-09-21
        • 2015-05-31
        • 1970-01-01
        • 2021-12-12
        相关资源
        最近更新 更多