使用Jackson映射时,将默认值设置为空字段

我正在尝试使用Jackson将一些JSON对象映射到Java对象。JSON对象中的某些字段是必填字段(可以用标记@NotNull),而某些字段是可选字段。

用Jackson映射之后,在JSON对象中未设置的所有字段在Java中都将具有空值。是否有类似的注释@NotNull可以告诉Jackson为Java类成员设置默认值(如果为null)?

编辑:为了使问题更清楚,这里是一些代码示例。

Java对象:

class JavaObject {

@NotNull

public String notNullMember;

@DefaultValue("Value")

public String optionalMember;

}

JSON对象可以是:

{

"notNullMember" : "notNull"

}

要么:

{

"notNullMember" : "notNull",

"optionalMember" : "optional"

}

@DefaultValue注释只是为了展示一下我问。这不是真正的注释。如果JSON对象类似于第一个示例,则我希望的值optionalMember"Value"and

not null。有没有做这种事情的注释?

回答:

没有注释可以设置默认值。

您只能在Java类级别上设置默认值:

public class JavaObject 

{

public String notNullMember;

public String optionalMember = "Value";

}

以上是 使用Jackson映射时,将默认值设置为空字段 的全部内容, 来源链接: utcz.com/qa/433764.html

回到顶部