Java 使用jackson(仅一个类)将bean序列化为空json文档

Java 使用jackson(仅一个类)将bean序列化为空json文档,java,json,serialization,jackson,Java,Json,Serialization,Jackson,我有一个web服务客户端,它需要在HTTP POST中发送json数据。我需要在其中一个字段中提供一个空json对象。我不能忽略这个字段,它必须是一个对象,我不应该在这个对象中提供任何字段,因为这会改变结果。只有一个空对象才行 这可以在jackson中单独使用注释来完成吗?如果有任何序列化或映射配置,我需要它只应用于这个类。我希望有一个神奇的选项来JsonInclude或JsonSerialize 所需的序列化输出: { "field1": "value1", "field2": "va

我有一个web服务客户端,它需要在HTTP POST中发送json数据。我需要在其中一个字段中提供一个空json对象。我不能忽略这个字段,它必须是一个对象,我不应该在这个对象中提供任何字段,因为这会改变结果。只有一个空对象才行

这可以在jackson中单独使用注释来完成吗?如果有任何序列化或映射配置,我需要它只应用于这个类。我希望有一个神奇的选项来
JsonInclude
JsonSerialize

所需的序列化输出:

{
  "field1": "value1",
  "field2": "value2",
  "field3": {}
}
这与我的Java类非常接近:

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
public class BeanClass implements Serializable {
  private static final long serialVersionUID = 1L;

  @JsonProperty("field1")
  private String field1;

  @JsonProperty("field2")
  private String field2;

  @JsonProperty("field3")
  private EmptyBean field3;
}
EmptyBean
类大致如下所示:

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
public class EmptyBean implements Serializable {
  private static final long serialVersionUID = 1L;
}
一种关闭带有注释的
FAIL\ON\u EMPTY\u BEAN
序列化选项的方法可以帮我完成这项工作。看起来很有希望,但重点放在配置上,看起来它将应用于我的整个应用程序(我不希望这样)


如果可能的话,我希望通过注释来解决这个问题。但只要我有办法只为这个类更改映射,我就会很高兴。

面对同样的问题。你找到任何解决方法了吗(除了创建自定义反序列化程序)?这是很久以前的事了,我不记得结果如何。我在找一个朋友。如果你想清楚了,你可能会得到亡灵法师。面对同样的问题。你找到任何解决方法了吗(除了创建自定义反序列化程序)?这是很久以前的事了,我不记得结果如何。我在找一个朋友。如果你弄明白了,也许你可以赢得亡灵法师。