2011年10月09日
首先我要实现的是从一个服务地址上拉取json数据,然后在本地解析成实体类,使用的是fastjson,期间遇到了一个很费解的问题,不知道是我操作不当还是它本来就有这个bug,问题是这样的,我根据json数据构建实体类,因为它的字段全是大写的,我的实体类的字段也跟着大写了,但是这样一来,我获取到了json数据,在toObject得到的实体对象中所有的字段都是没有值的,后来我研究了许久,看看我之前的通过的实验和我现在的有何区别,就发现了字段大小写的问题,于是我将我自己构造好的json数据,里面的字段名称改为小写,我的实体类的字段名也对应改好,这样就成功解析了。
一般呢,我们属性都是小写开头,然后get和set加上字段头字母大写组成get/set属性,方便反射调用,我感觉就是fastjson无法根据字段在我的实体类中找到对应的get/set方法,所以得到的对象中所有字段都为空,后来就果断换成jsonlib,结果全部通过!
还请高人解析一下这是为什么!?
原文链接:https://www.f2er.com/json/290732.html