如何在泛型方法中获取枚举类?

时间:2017-11-06 23:09:54

标签: java generics enums jackson

我正在尝试为杰克逊的Enum创建标准的序列化和反序列化方法。

我的序列化非常简单:

$('.text').removeAttr('ng-bind').attr('ng-bind-html', 'text');

现在我正在开发Deserializer:

public class EnumSerializer extends JsonSerializer<Enum<?>> {

    @Override
    public void serialize(Enum<?> data, JsonGenerator gen, SerializerProvider provider)
            throws IOException, JsonProcessingException {

        if (data == null) {
            gen.writeString("");
        } else {
            gen.writeString(data.name());
        }
    }
}

但你可以看到我无法获得enumClass。

你能帮我吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果你真的想要创建自定义EnumDeserializer,你可以看到Jackson的实现: com.fasterxml.jackson.databind.deser.std.EnumDeserializer

但我可以看到你试图实现杰克逊的标准行为。