FastJson解析is开头变量方法
发布日期:2021-06-23 19:02:41 浏览次数:10 分类:技术文章

本文共 1434 字,大约阅读时间需要 4 分钟。

转载请注明出处

Author :ruanjianjiagou@163.com

FastJson 解析序列化对象的 is开头的变量 取值一直为false的解决方案

背景:

在项目开发过程中,服务器给的json串中某变量是这样的“IsNewUser”代表是否为新用户,在转换实体Bean的时候我们通常会借助GsonFormat 自动转换Bean如下实体

public static class ProductsEntity implements  Serializable {
private static final long serialVersionUID = -4316440836525137237L; private String Title;//标题 private double Amount;//金额 private boolean IsNewUser;//是否新用户 public void setTitle(String Title) { this.Title = Title; } public void setAmount(double Amount) { this.Amount = Amount; } public String getTitle() { return Title; } public double getAmount() { return Amount; } public boolean isBuyNewUser() { return IsBuyNewUser; } public void setBuyNewUser(boolean buyNewUser) { IsBuyNewUser = buyNewUser; }}

于是在取值的时候IsNewUser 字段一直为false

无论json中是true还是false 解析出来都是false

问题代码

public void setBuyNewUser(boolean buyNewUser) {            IsBuyNewUser = buyNewUser;        }

应该改为

public void setIsBuyNewUser(boolean buyNewUser) {            IsBuyNewUser = buyNewUser;        }

理论依据为

Bean的命名规则

Bean中对应的set必须和Json中的字段对应,比如Json中有id字段,get方法名应该为setId,必须是set+字段名,字段名忽略大小写,如果字段是类似的is_default,那么set方法名应为setIs_default,下划线不能省略


FastJson是阿里巴巴提供的一个Json处理工具包,具有极快的性能,超越任其他的Java Json parser。使用起来非常方便。

项目主页 :

引用方式: compile ‘com.alibaba:fastjson:1.2.21’


转载地址:https://blog.csdn.net/u014513456/article/details/53197266 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Chrome、Firefox 浏览器全屏启动 与 保存网页为 PDF
下一篇:HTTP 缓存机制及原理

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年04月19日 10时06分33秒