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;
    }

}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

当你使用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;
    }

}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

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


转载自瓜皮哥:http://blog.csdn.net/ezreal_king/article/details/56477193

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

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

更多推荐