做一个外卖项目时,先开发的前端,其中boolean类型的变量,变量名全部采用了"isXXX"的形式。
然后开发后端,boolean类型的变量名也全部是"isXXX"。
看起来一切正常,然后前后端对接。
对接时,前端检查接收到的对象,发现了一个问题。
"isSeeMore"变成了"seeMore","isUnderRevision"变成了"underRevision"
最开始百思不得其解,开始在网上检索。最终一篇知乎的文章解答了疑惑:
为什么阿里巴巴禁止开发人员使用 “isSuccess” 作为变量名?
细节可以看链接中那篇文章,一个大坑。
文章评论区一位知乎网友说的好:
学习英语,规范格式!
有一个暂时的简便方法,参考自(https://blog.csdn.net/weixin_39297312/article/details/80353512):
1. 在get方法(如果是boolean类型的字段 就在boolean)上面加入@JsonProperty(value = “isClassId”)注解
2. 手动修改get方法名(如果是boolean类型的 就把boolean)改为getIsClassId
3. set方法的处理同上
博主所参与的项目,先开发的前端,其中boolean类型的变量,变量名全部采用了"isXXX"的形式,暂时使用简便办法修复了。如果想真正解决这个问题。只能进行变量名大换血,重构。希望大家可以警惕这个坑,注意规范格式。