今天在做项目的时候发现一直获取不到json数据,之前的项目是可以的,但是这个就是不行,查了很多资料也没有解决问题,最后一步一步排查发现是返回的对象必须要有set,get方法才行。。

apifox显示问题:

写的test测试:

结果一直不行,加上set和get方法后:

但是问题解决了,我想知道为什么我都给你封装好了对象了你还要调用set,get方法才能转成json对象?又一步一步的测试。。

先把Result中的set方法去掉试试:

看看能不能获得:

发现有没有set结果不影响。。

再把get去掉看看:

发现出了问题,data没了:

那把get去掉,但是属性改为public呢?

再发送请求看看:

data又有了。。

至此了解到,原来springmvc帮助我们把对象封装成json需要获取对象的属性才行,就算我们已经把对象的属性都注入了,它获取不到也不行,而具体实现的原理还是由各位读者区自行研究,我继续滚回去做项目了,花了我4个小时排查这个问题。。。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐