Hello! 欢迎来到小浪资源网!

Spring Boot静态方法返回数据为空?如何解决CommonResult对象数据字段私有访问权限问题?


Spring Boot静态方法返回数据为空?如何解决CommonResult对象数据字段私有访问权限问题?

spring boot 以静态方法返回数据为空的原因是,返回的 commonresult 对象中对数据字段使用了私有访问权限。

在 commonresult 类中,data 字段被声明为 private。这意味着只有该类中的方法才能访问该字段。在 success() 静态方法中,data 字段被赋值,但由于是私有的,因此无法通过返回的 commonresult 对象访问。

为了以 json 格式返回数据,需要使用一个带有 @jsonignore 注解的 getter 方法来暴露私有字段。在 commonresult 类中添加以下 public getter 方法:

@jsonignore(false) public t getdata() {     return data; }

添加此 getter 方法后,jackson 就能将 data 字段序列化为 json 并将其包含在响应中,从而得到预期的结果:

{   "code": 0,   "message": "",   "data": {     "id": 3,     "username": "1e29a45d-6363-43b3-a08d-3989ea70d1ae"   } }

相关阅读