【问题标题】:RestTemplate Project: the DTO fields changing on their ownRestTemplate 项目:DTO 字段自行更改
【发布时间】:2021-03-24 06:52:06
【问题描述】:

所以我使用 Spring Boot 制作了使用 Rest Web 服务的 Rest Client。我正在传递所需的 requestbody,但在打印 requestbody 时它与我的输入不同。

例如:我输入的是TransactionId,然后将其更改为transactionId,AB_NAME将更改为ab_NAME。 所以所有这些字段都被分配了空值。 正在形成的 ResponseEntity 也做同样的事情。我不知道为什么会这样。

我所做的 dto 与我要发送的输入一致,所以我不知道它们如何自行更改。

编辑:所以基本上 web 服务 dto 字段不使用 Java 命名约定,但 JSON 自动假定它们是,必须使用 @JsonProperty 来确保字段保持不变。感谢您的所有帮助。

【问题讨论】:

  • 请分享代码sn-p
  • 您可能想要共享一些代码(至少是 DTO 和预期的 json 格式),但我猜由于您没有使用 Java Beans 约定,默认映射器不适合(根据 Java Beans 属性应该是transactionIdabName)。

标签: java spring-boot resttemplate dto rest-client


【解决方案1】:

查看您的请求正文属性名称,您的模型属性名称应与大小写相同。这里写一个例子

DTO

publi class SomeName{
 
 private string transactionId;
 private string ab_NAME;

}

发送正文格式应为

{
   "transactionId":"11111",
   "ab_NAME":"ABCDE"
}

谢谢。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-10
    • 2021-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多