相关疑难解决方法(0)

使用Jackson反序列化非字符串映射键

我有一个看起来像这样的地图:

public class VerbResult {
    @JsonProperty("similarVerbs")
    private Map<Verb, List<Verb>> similarVerbs;
}
Run Code Online (Sandbox Code Playgroud)

我的动词类看起来像这样:

public class Verb extends Word {
    @JsonCreator
    public Verb(@JsonProperty("start") int start, @JsonProperty("length") int length,
            @JsonProperty("type") String type, @JsonProperty("value") VerbInfo value) {
        super(length, length, type, value);
    }
    //...
}
Run Code Online (Sandbox Code Playgroud)

我想序列化和反序列化我的VerbResult类的实例,但是当我这样做时,我得到这个错误: Can not find a (Map) Key deserializer for type [simple type, class my.package.Verb]

我在网上看到你需要告诉杰克逊如何反序列化地图密钥,但我没有找到任何解释如何进行此操作的信息.动词类也需要在地图之外进行序列化和反序列化,因此任何解决方案都应保留此功能.

java jackson

18
推荐指数
3
解决办法
3万
查看次数

标签 统计

jackson ×1

java ×1