设置DTO的变量的是有isXXX的值的,但是使用fastjson序列化后,这几个变量就不见了。
{
"cityid":1,
"cityname":"上海",
"clienttype":"iphone",
"glat":139.78120482626642,
"glng":35.625721171054344,
"msgid":"19142020721848452861509443234119",
"overseas":false,
"strangeLand":true,
"timestamp":1509443234119
}
很奇怪,为什么isXXX序列化后就没有了呢,然后就去排查,发现默认的setter和getter方法,如果是boolean变量的话默认的get方法用的isxxx
public boolean isbackground() {
return isbackground;
}
public void setIsbackground(boolean isbackground) {
this.isbackground = isbackground;
}
这样其实就没有isbackground这个变量的get方法,所以只需要修改isbackground的get方法就可以了。
public boolean getIsbackground() {
return isbackground;
}
public void setIsbackground(boolean isbackground) {
this.isbackground = isbackground;
}
这样就好了。。。