
spring boot 以静态方法返回为空的原因
在 spring boot 应用程序中,使用控制器方法返回 commonresult 类型的对象时,返回结果可能出现为空的情况。这是由于 commonresult 中的 data 属性默认设置为私有访问。
为了解决这个问题,需要将 commonresult 中的 data 属性设置为公共访问权限,或者提供一个公共的 getter 方法来获取 data 值。
修改 commonresult 类
修改 commonresult 类如下:
public class commonresult<t> implements serializable {
public static integer code_success = 0;
private integer code;
private string message;
public t data; // data 的访问权限由 private 改为 public
public integer getcode() {
return code;
}
public string getmessage() {
return message;
}
public static <k> commonresult<k> success(k input_data) {
commonresult<k> result = new commonresult<>();
result.code = code_success;
result.data = input_data;
result.message = "";
return result;
}
}修改控制器方法
修改控制器方法返回类型,使用 commonresult 的公共 data 字段:
@getmapping("/get2")
public commonresult<uservo> get2(@requestparam("id") integer id) {
uservo user = new uservo().setid(id).setusername(uuid.randomuuid().tostring());
// 返回结果
return commonresult.success(user).data; // 使用 commonresult 的公共 data 字段
}通过这些修改,使用静态方法返回 commonresult 对象时即可正常返回 data 值:
{
"code": 0,
"message": "",
"data": {
"id": 3,
"username": "1e29a45d-6363-43b3-a08d-3989ea70d1ae"
}
}以上就是Spring Boot中静态方法返回CommonResult为空的原因是什么?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号