使用Jackson注释将子数组解析为JSON?

我正在尝试解析一些包含嵌套数组的JSON。 我希望数组映射到父映射中的子对象列表。 这是(稍微缩写)JSON和Java类

JSON:

{ "id": "12121212121", "title": "Test Object", "media$content": [ { "plfile$audioChannels": 1, "plfile$audioSampleRate": 18000, }, { "plfile$audioChannels": 2, "plfile$audioSampleRate": 48000, }, { "plfile$audioChannels": 2, "plfile$audioSampleRate": 48000, } ] } 

Java类

 class MediaObject { @JsonProperty("id") private String id; @JsonProperty("title") private String title; @JsonProperty("media$Content") private List mediaContent; ... getters/setters ... } class MediaContent { @JsonProperty("plfile$audioChannels") private int audioChannels; @JsonProperty("plfile$audioSampleRate") private int audioSampleRate; ... getters/setters ... } 

我希望能够使用注释和标准映射器代码反序列化,即mapper.readValue(jsonString,MediaObject.class)

使用“id”和“title”字段一切正常,但我的MediaContent对象列表总是为空。 这似乎是jackson应该能够毫不费力地处理的事情,谁能看到我在这里做错了什么?

json字段的名称是错误的 – 该属性不是media$Content ,而是media$[c]ontent 。 否则我不明白为什么它不起作用。