Bug FastJson解析下划线字段问题 _id
2015-11-27 18:06
651 查看
今天在使用fastjson 过程中出现无法解析的字段,在查阅资料和源码之后,记录如下:
——希望再次遇到此问题的人,不用翻遍Google!!!
通常情况下,我们使用fastjson 解析方法如下:
1.Object
T 是泛型,clazz 是object.class (此方法是本人封装过的,如有不会的自行查阅fastjson 解析对象方法)
2.Array
T 是泛型,clazz 是object.class (此方法是本人封装过的,如有不会的自行查阅fastjson 解析数组方法)
然而,对于通常字段和写法来说,这些都是没有问题的,但是对于习惯于C++ 写法的程序员习惯于_id之类的字段,则会出现无法解析的问题
经查阅资料和翻阅源码,解决方案如下:
在Object之中,
针对下划线开始的字段_id,在set 与 get 方法上添加@JSONField(name="_id") 即可解决实际问题
参考原文:http://blog.csdn.net/kisssun0608/article/details/48289535
——希望再次遇到此问题的人,不用翻遍Google!!!
通常情况下,我们使用fastjson 解析方法如下:
1.Object
T objectT = (T) JSON.parseObject(valueJsonObject.toString(), clazz);
T 是泛型,clazz 是object.class (此方法是本人封装过的,如有不会的自行查阅fastjson 解析对象方法)
2.Array
List<T> arrayT = (List<T>) JSON.parseArray(valuesJsonArray.toString(), clazz);
T 是泛型,clazz 是object.class (此方法是本人封装过的,如有不会的自行查阅fastjson 解析数组方法)
然而,对于通常字段和写法来说,这些都是没有问题的,但是对于习惯于C++ 写法的程序员习惯于_id之类的字段,则会出现无法解析的问题
经查阅资料和翻阅源码,解决方案如下:
在Object之中,
private String _id; @JSONField(name="_id") public String getObjectId() { return _id; } @JSONField(name="_id") public void setObjectId(String _id) { this._id = _id; }
针对下划线开始的字段_id,在set 与 get 方法上添加@JSONField(name="_id") 即可解决实际问题
参考原文:http://blog.csdn.net/kisssun0608/article/details/48289535
相关文章推荐
- 给新人看的 JavaScript的继承
- PX转REM简易计算器(适用于fittext.js插件计算)
- js学习笔记
- 读取配置文件--Properties+ServlerContext+Map+JSON+Writer
- JS 浮点计算BUG
- javascript history.go(-1) 返回刷新
- js正则表达式/replace替换变量方法
- expressjs路由匹配规则
- Jsp中的自定义标签由浅到深详细讲解
- JS基础——修改文本框的值(函数传参)
- js刷新页面方法
- JS基础——修改文本框的值(函数传参)
- JS创建和存储 cookie一些方法总结
- JavaScript 获取dom外联样式
- 利用ZABBIX的RPC-JSON作API扩展应用示例
- [转]html js中name和id的区别和使用分析
- 关于JSP自定义标签的几点说明
- JSP自定义标签开发入门
- JS在HTML的中位置
- JS基础——选项卡列表显示隐藏缩略图(函数传参)