Java JsonProperty 注释在编码时不起作用

标签 java json jackson marshalling

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

public  class GlobalData  implements Serializable {

//constructors getters and setters

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

}

属性 sizeGuide 标记为 JsonProperty ,因此当我使用 ObjectMapper 对其进行编码时,该属性将出现在名为 size-guide 而不是 sizeGuide 的 JSON 中。

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

有什么提示吗?

最佳答案

您需要使用

public  class GlobalData  implements Serializable {

//constructors getters and setters

    @com.fasterxml.jackson.annotation.JsonProperty("size-guide")   
    private List<SizeGuide> sizeGuides;

}

关于Java JsonProperty 注释在编码时不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59821449/

相关文章:

java - 将两个 ImageView 放在另一个 ImageView 之上

java - 从 Elasticsearch 获取必填字段

sql - PostgreSQL 9.3 - 如何使用 json_populate_recordset 插入但仍然按序列获取自动 ID

java - 从Java时间开始之前出生的人的出生日期计算年龄

PHP/MySQL/PDO - 结果为假但没有数据库错误消息?

Python csv 转 json (D3)

java - springdoc-openapi 如何在不更改 toString 的情况下使用 @JsonValue 枚举格式?

JSON:序列化 Guava optional

java - 如何定义可以具有类型 T 或类型 List<T> 的泛型类

java - 如何使用源码包中的文件(路径是什么?)