温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何解决javaBean json传参首字母大写获取不到的问题

发布时间:2021-07-30 18:14:38 来源:亿速云 阅读:331 作者:chen 栏目:开发技术

本篇内容介绍了“如何解决javaBean json传参首字母大写获取不到的问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

javaBean规范导致json传参首字母大写获取不到

规范中另一个特别的地方就是:

1.第二个字母为大写的属性名要区别对待

如果属性名的第二个字母是大写的,那么该属性名直接用作 getter/setter 方法中 get/set 的后部分,就是说大小写不变。

2.属性是首字母大写

次字母小写是,你永远都找不到它的 getter/setter 方法的。

3.对于 boolean 类型属性的 getter 方法

是 isXxx() 还是 getXxx() 就自己决定了,isXxx() 应该更接近于自然语言,更顺溜些。

一般JavaBean属性以小写字母开头,驼峰命名格式,相应的 getter/setter 方法是 get/set 接上首字母大写的属性名。例如:属性名为userName,其对应的getter/setter 方法是 getUserName/setUserName。

但是,还有一些特殊情况:

1、如果属性名的第二个字母大写

那么该属性名直接用作 getter/setter 方法中 get/set 的后部分,就是说大小写不变。例如属性名为uName,方法是getuName/setuName。

2、如果属性名的前两个字母是大写

(一般的专有名词和缩略词都会大写),也是属性名直接用作 getter/setter 方法中 get/set 的后部分。例如属性名为URL,方法是getURL/setURL。

3、如果属性名的首字母大写

也是属性名直接用作 getter/setter 方法中 get/set 的后部分。例如属性名为Name,方法是getName/setName,这种是最糟糕的情况,会找不到属性出错,因为默认的属性名是name。

4、如果属性名以"is"开头

则getter方法会省掉get,set方法会去掉is。例如属性名为isOK,方法是isOK/setOK。

需要注意的是有些开发工具自动生成的getter/setter方法,并没有考虑到上面所说的特例情况,会导致bug的产生。

我们在定义JavaBean的属性名时,应该尽量避免属性名的头两个字母中任意一个为大写以及属性名以"is"开头。

javaBean变量第一二个字母大写取不到值

跟别公司对接接口,他们传过来的参数居然首字母是大写,然后说他们改的话影响太大了,很多地方都要改,就只能麻烦我们改了,于是乎,FIdNumber这个参数跟我周旋了半天,首字母和第二个字母都大写的话是没问题的,可是我就是死活取不到值,查了很多资料,都是讲java规范的;没啥用,皇天不负有心人,最后终于让我找到了,是spring的锅,加上@JsonProperty注解就OK了

@JsonProperty(value = "FIdNumber")
private String fIdNumber;

“如何解决javaBean json传参首字母大写获取不到的问题”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI