可以访问自定义序列化器杰克逊中的默认序列化器

时间:2019-03-08 20:16:22

标签: spring-boot jackson

具有一个自定义的序列化器,并希望访问其中的默认序列化器。

public class HibernateLazySerializer extends JsonSerializer<PersistentCollection> {

    @Override
    public void serialize(PersistentCollection value, JsonGenerator gen, SerializerProvider provider) throws IOException {

    if (!value.wasInitialized()) {
        gen.writeNull();
        return;
    } else {
        //gen.writeStartObject();
        provider.defaultSerializeValue(value,gen);
        // gen.writeEndObject();
        //return;
   }
}

在else块中,要调用默认的序列化程序以避免堆栈溢出错误,因为在同一序列化程序中它会被一次又一次地调用。

或者还有其他方法可以在else块中处理我的序列化器。

0 个答案:

没有答案