Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 忽略@JsonValue注释而不进行子类化_Java_Json_Jackson_Jackson Databind - Fatal编程技术网

Java 忽略@JsonValue注释而不进行子类化

Java 忽略@JsonValue注释而不进行子类化,java,json,jackson,jackson-databind,Java,Json,Jackson,Jackson Databind,让我们假设在某个第三方库中有一个类层次结构。其中一个类具有@JsonValue注释。它只会导致一个字段的序列化/反序列化。是否可以忽略@JsonValue注释而不进行子类化并序列化所有对象字段?您可以定义一个MixIn并通过属性或getter重写@JsonValue -取决于注释在第三方库中的设置位置 假设我们有一个带有@JsonValue注释的成员prop的类Pojo: 然后,我们定义一个抽象的MixIn类,如下所示,覆盖特定的成员或方法: abstract class MixIn {

让我们假设在某个第三方库中有一个类层次结构。其中一个类具有@JsonValue注释。它只会导致一个字段的序列化/反序列化。是否可以忽略@JsonValue注释而不进行子类化并序列化所有对象字段?

您可以定义一个MixIn并通过属性或getter重写@JsonValue -取决于注释在第三方库中的设置位置

假设我们有一个带有@JsonValue注释的成员prop的类Pojo:

然后,我们定义一个抽象的MixIn类,如下所示,覆盖特定的成员或方法:

abstract class MixIn {
    @JsonValue(false) // either annotating members
    private String prop;

    @JsonValue(false) // or annotating methods
    abstract String getProp();
}
可以将其添加到ObjectMapper,如下所示:

objectMapper.addMixIn(Pojo.class, MixIn.class);

现在prop和prop2都被序列化了,而不仅仅是prop。

您可以定义一个MixIn并通过属性或getter重写@JsonValue -取决于注释在第三方库中的设置位置

假设我们有一个带有@JsonValue注释的成员prop的类Pojo:

然后,我们定义一个抽象的MixIn类,如下所示,覆盖特定的成员或方法:

abstract class MixIn {
    @JsonValue(false) // either annotating members
    private String prop;

    @JsonValue(false) // or annotating methods
    abstract String getProp();
}
可以将其添加到ObjectMapper,如下所示:

objectMapper.addMixIn(Pojo.class, MixIn.class);
现在prop和prop2都被序列化,而不仅仅是prop