【问题标题】:How to map multiple different request bodies in to same POJO如何将多个不同的请求主体映射到同一个 POJO
【发布时间】:2019-03-12 23:44:51
【问题描述】:

我有不同的帖子请求正文,如下所示:

{
   "name": "US",  
   "amount": "1234"    
}

{
   "fullName": "US",  
   "transAmount": "1234"    
}

我创建了一个 java 过滤器来修改我的 Spring Boot 应用程序中的那些请求主体。我想将它们转换为统一格式,以使所有请求主体都可以映射到同一个 POJO。

最终“name”和“fullName”应该被映射到name, “amount”和“transAmount”应该映射到amount。我怎样才能做到这一点?

【问题讨论】:

  • 在您的过滤器中,您可以填充您的统一 POJO。由于属性名称不同,必须手动完成。

标签: java json spring-boot http-post mapping


【解决方案1】:

看看@JsonAlias here

public class Info {
  @JsonAlias({"name", "fullName"}
  public String name;

  @JsonAlias({"amount", "transAmount"}
  public double amount;
}

【讨论】:

    【解决方案2】:

    您可以使用 JsonAlias:

    @JsonAlias({"name", "fullName"})
    private String name; 
    

    【讨论】:

      猜你喜欢
      • 2019-03-13
      • 1970-01-01
      • 2019-02-04
      • 2020-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多