JAVA对象jackson序列化json属性名变成小写的解决方案

有如下类:

public class road {

    private int GREEN_TREE;
    public int getGREEN_TREE() {
        return GREEN_TREE;
    }
    public void setGREEN_TREE(int GREEN_TREE) {
        this.GREEN_TREE = GREEN_TREE;
    }

}

当你使用jackson对其进行序列化的时候, “GREEN_TREE” 在得到的json中却显示成了“green_TREE”,就很奇怪。。
查找了一下,发现这并不是代码的问题,而是jackson的默认行为,嘿嘿。。

解决方法就是:
1、在声明变量时加上注解: @JsonProperty
2、在set/get方法加上注解:@JsonIgnore
代码如下:

public class road {

    @JsonProperty
    private int GREEN_TREE;
    @JsonIgnore
    public int getGREEN_TREE() {
        return GREEN_TREE;
    }
    @JsonIgnore
    public void setGREEN_TREE(int GREEN_TREE) {
        this.GREEN_TREE = GREEN_TREE;
    }

}

这样处理之后,json中就是“GREEN_TREE”了。

GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 2 个月前
8c391e04 5 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐