java中实体pojo对于布尔类型属性命名尽量别以is开头,否则 fastjson可能会导致属性读取不到

假如我们有一个场景,就是需要将一个对象以字符串的形式,也就是jsonString存到一个地方,比如mysql,或者redis的String结构。现在有一个实体,我们自己创建的,叫做CusPojo.java

有两个属性是布尔类型的,一个属性是有is开头,一个是没有is开头的,我们就可以做个对比。

现在我导入fastjson依赖,创建一个CusPojo对象,然后序列化为jsonString,我们打印结果如何

运行代码,点击run,运行结果:

可以看到isSuccess被success代替了,而valid还是原模原样的valid。

我们把isSuccess改成success,看看结果如何。

success还是success,valid还是valid,证明可能是fastjsob框架在解析的时候会默认把is去掉。我们可以自己调试,看看源码,这里就不带大家浏览源码了。

阿里巴巴开发手册页明确表明:

所以如果我们通过fastJson反序列Json.toJson(String jsonString)的时候,读取该属性字段就会读取不到,报错。

总结:

java实体POJO布尔类型属性名最好不要加is前缀。

最后:

如果大家觉得这篇文章对你们有所帮助,麻烦点个免费的赞赞,也住各位码农在未来的IT道路上越走越远,谢谢!

相关推荐
云栖梦泽4 分钟前
易语言Windows桌面端「本地AI知识管理+办公文件批量自动化处理」双核心系统
开发语言
8***f3958 分钟前
Spring容器初始化扩展点:ApplicationContextInitializer
java·后端·spring
r_oo_ki_e_14 分钟前
java22--常用类
java·开发语言
AI小怪兽16 分钟前
轻量、实时、高精度!MIE-YOLO:面向精准农业的多尺度杂草检测新框架 | MDPI AgriEngineering 2026
开发语言·人工智能·深度学习·yolo·无人机
码农小韩16 分钟前
基于Linux的C++学习——循环
linux·c语言·开发语言·c++·算法
linweidong24 分钟前
C++ 中避免悬挂引用的企业策略有哪些?
java·jvm·c++
用户937611475816126 分钟前
并发编程三大特性
java·后端
CoderCodingNo26 分钟前
【GESP】C++五级/四级练习(双指针/数学) luogu-P1147 连续自然数和
开发语言·c++·算法
阿在在27 分钟前
Spring 系列(二):加载 BeanDefinition 的几种方式
java·后端·spring
IT=>小脑虎27 分钟前
PHP零基础衔接进阶知识点【详解版】
开发语言·学习·php