java - 如何使用 Java/Jackson 处理 REST 属性删除?

标签 java rest jackson

我有一个能够更新用户对象的 REST API:

{ "username": "joedoe", "emailAddress": null }

用户名是强制性的,电子邮件地址是可选的。

应该是可能的:

  1. 更新用户名和电子邮件地址
  2. 仅更新用户名
  3. 删除电子邮件地址字段

1:

{ "username": "joedoe", "emailAddress": "joedoe@anywhere.tld" }

2:

{ "username": "joedoe" }

3:

Jackson 会将此 JSON 转换为 POJO,其中 emailAddress 字段为空。可以使用哪些选项来区分用户名更新和 emailAddress 设置为 null 的请求。

我当前的实现将忽略对设置为 null 的字段的更新。

最佳答案

对于 JSON,有一个 RFC 6902用于修补对象。您可以在 REST API 中使用它。删除是您要在其他操作中使用的操作,以抑制对象中的电子邮件属性。

关于java - 如何使用 Java/Jackson 处理 REST 属性删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32177348/

相关文章:

java - 如何在 JAX-RS 中映射动态 JSON

java - 将 Jackson ObjectMapper 与 Java 8 可选值一起使用

java - 使用 BufferedReader 和 ScheduledExecutor 记录日志

java - 创建/设置来自 Neo4j 中参数对象的属性

apache - 如何在 Apache 服务器上为 REST api 实现 SSL 客户端证书?

web-services - 通过 HTTPS 公开 RESTful WCF 服务

java - 使@JsonAnySetter 与@Value Lombok 一起工作

java - 如何为 JUnit 模拟多个用户输入

java - 如何生成多个工作线程并将它们绑定(bind)到 Heroku 上的非 Web Java 应用程序

javascript - 通过在 Protractor 测试中发布一些 JSON 数据来调用删除其余 API