首页 > 解决方案 > 编组时Java JsonProperty注释不起作用

问题描述

我有以下 POJO(在构造函数等中):

public  class GlobalData  implements Serializable {

//constructors getters and setters

    @org.codehaus.jackson.annotate.JsonProperty("size-guide")   
    private List<SizeGuide> sizeGuides;

}

使用 JsonProperty 标记的属性 sizeGuide ,所以当我使用 ObjectMapper 编组它时,该属性将出现在名为 size-guide 而不是 sizeGuide 的 JSON 中。

但是,这不起作用,当我将 ObjectMapper.write 值作为 String 方法执行时,该属性不会“更改”他的名字,它仍然显示为 sizeGuide。

有什么提示吗?

标签: javajsonjacksonmarshalling

解决方案


您可能还想getSizeGuides按照上面的方法注释 getter - 对我来说,变量注释有时不起作用,因为 getter 在(un)编组 JSON 时似乎获得优先权。一些解释和例子在这里:http ://www.javabyexamples.com/how-to-change-property-name-with-jackson/


推荐阅读