`is`开头属性序列化问题
fun test2(){
val test = TestID("sdf", 22, 12)
val jsonVal = ObjectMapper().writeValueAsString(test)
println("jackson$jsonVal")
val fromJson = Gson().fromJson(jsonVal, TestID::class.java)
println("gson$fromJson")
}
}
data class TestID(
var str:String,
var num:Int,
var isDel: Int
): Serializable
结果
jackson{"str":"sdf","num":22}
gsonTestID(str=sdf, num=22, isDel=0)
不建议使用is开头属性
解决方法:
重写get方法,isDel属性get方法为isDel,而不是getIsDel,所以需要自行重写get方法
但最好是不建议写is开头的属性,在阿里巴巴开发手册中也有写道
本文讨论了在Java中,尤其是使用Jackson和Gson进行对象序列化时,不建议使用以`is`开头的属性。作者提到通过重写get方法来解决`isDel`属性的问题,并引用阿里巴巴开发手册中的建议。

166

被折叠的 条评论
为什么被折叠?



