fastjson关于is开头的字段名的序列化问题
fastjson
FASTJSON 2.0.x has been released, faster and more secure, recommend you upgrade.
项目地址:https://gitcode.com/gh_mirrors/fastj/fastjson
免费下载资源
·
前言
任何时候不推荐java的字段名使用is开头
实例
定义一个测试的bean
package com.ahut.common.entity;
public class TestBean {
/**
* 非boolean类型, is开头字段, get方法使用getIsXXX
*/
private String isFlag;
/**
* 非boolean类型, is开头字段, get方法使用isXXX
*/
private String isName;
/**
* boolean类型, is开头字段, get方法使用getIsXXX
*/
private boolean isAge;
/**
* boolean类型, is开头字段, get方法使用isXXX
*/
private boolean isSuccess;
public String getIsFlag() {
return isFlag;
}
public String isName() {
return isName;
}
public boolean getIsAge() {
return isAge;
}
public boolean isSuccess() {
return isSuccess;
}
public void setIsFlag(String isFlag) {
this.isFlag = isFlag;
}
public void setIsName(String isName) {
this.isName = isName;
}
public void setAge(boolean age) {
isAge = age;
}
public void setSuccess(boolean success) {
isSuccess = success;
}
}
使用fastjson序列化
/**
* @desc :
* @author : cheng
* @date : 2019-03-07 21:40
*/
@Test
public void testJson() {
TestBean bean = new TestBean();
bean.setIsFlag("true");
bean.setIsName("true");
bean.setAge(true);
bean.setSuccess(true);
System.out.println(JSON.toJSONString(bean));
}
结果
{"isAge":true,"isFlag":"true","success":true}
总结
- is开头的非boolean类型字段,使用getIsXXX方法,序列化后字段名不变
- is开头的非boolean类型字段,使用isXXX方法,序列化之后消失
- is开头的boolean类型字段,使用getIsXXX方法,序列化之后字段名不变
- is开头的boolean类型字段,使用isXXX方法,序列化之后字段名前的is被去除
GitHub 加速计划 / fastj / fastjson
25.69 K
6.51 K
下载
FASTJSON 2.0.x has been released, faster and more secure, recommend you upgrade.
最近提交(Master分支:3 个月前 )
c942c834 - 1 年前
5bc4709b - 1 年前
更多推荐
已为社区贡献3条内容
所有评论(0)