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”了。