翻译json根元素杰克逊?

时间:2016-04-25 11:21:08

标签: java json serialization jackson objectmapper

我正在使用jackson 1.9并使用其ObjectMapper类来序列化和反序列化我的内容。所以我使用 PropertyNamingStrategy ,它在序列化和反向反序列化反序列化过程中转换特定表单中的所有键。

public class LongNameShortNameNamingStrategy extends PropertyNamingStrategyBase {

    @Override
    public String translate(String propertyName) {

        System.out.println("Translate: " + propertyName);
        String shortName = null, longName = null;
    longName = LongNameShortNames.getLongName(propertyName);

        if (longName != null){
            return longName;
        }

        shortName = LongNameShortNames.getShortName(propertyName);
        if (shortName != null){
            return shortName;
        }

        return propertyName;
    }
}

然而这导致我像json一样:

OBJECT MAPPER:---> JSON STRING:

{
  "ContentInstance" : {
    "st" : 1,
    "cs" : 10,
    "con" : "Sid"
  }

所以我的NamingStrategy未应用于json根元素。在序列化期间,它的名称不会转换为短名称。

如何为我的根元素应用类似的序列化和反序列化策略?

0 个答案:

没有答案