当前位置: 首页 > news >正文

统一返回JsonResult踩坑

定义了一个统一返回类,但是没有给@Data 导致没有get/set方法,请求一直报错

public class JsonResult<T> {private int code;private String message;private T data;public JsonResult() {}public JsonResult(int code, String message, T data) {this.code = code;this.message = message;this.data = data;}public int getCode() {return code;}public void setCode(int code) {this.code = code;}public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}public T getData() {return data;}public void setData(T data) {this.data = data;}public static <T> JsonResult<T> success(T data) {return new JsonResult<>(200, "Success", data);}
}

在使用时,JsonResult 没有 get/set 方法时,Spring MVC 在序列化时无法将对象正确转换为 JSON,因此会被视为 视图名称,导致循环视图渲染的问题。

Completed initialization in 2 ms
GET "/api/getUser", parameters={}
Mapped to kayou.eim.controller.BasicController#users()
Using 'application/octet-stream', given [*/*] and supported [*/*]
Using @ExceptionHandler kayou.eim.controller.global.GlobalExceptionHandler#handleException(Except
Internal server errororg.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representationResolved [org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation]
Completed 406 NOT_ACCEPTABLE
"ERROR" dispatch for GET "/api/error", parameters={}
Mapped to kayou.eim.controller.global.CustomErrorController#error(HttpServletRequest)
Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/json, appli
Writing [{timestamp=Wed May 07 18:09:17 CST 2025, status=406, error=Not Acceptable, path=/api/getUser}]
Exiting from "ERROR" dispatch, status 406

响应

{"timestamp": 1746612557176,"status": 406,"error": "Not Acceptable","path": "/api/getUser"
}

报错不够清晰准确,导致排查了一圈

相关文章:

  • PBR材质-Unity/Blender/UE
  • 优选算法系列(8.多源BFS)
  • 个人网站versionI正式上线了!Personal Website for Jing Liu
  • RISC-V架构深度解析
  • 高组装导轨的特点
  • 【Prometheus】 kube-state-metrics中的指标kube_pod_labels
  • 元子与元组的关系解析:从简单到复杂大跨界大综合的融智学研究
  • SSRF请求伪造
  • 分布式架构详解
  • Ceph 原理与集群配置
  • 驱动开发硬核特训 · 专题篇:Vivante GPU 与 DRM 图形显示体系全解析(i.MX8MP 平台实战)
  • 50个精选DeepSeek指令
  • QT中connect高级链接——指针、lambda、宏
  • Linux云计算训练营笔记day03(Rocky Linux中的命令)
  • MySQL OCP 认证限时免费活动​ 7 月 31 日 前截止!!!
  • Linux中的线程安全与线程同步详解
  • WordPress个人博客搭建(三):WordPress网站优化
  • vue3:十二、图形看板- 基础准备+首行列表项展示
  • 用go从零构建写一个RPC(仿gRPC,tRPC)--- 版本1(Client端)
  • 国产数据库铸就数字基建新基石,助力农业产业转型升级
  • 雇来的“妈妈”:为入狱雇主无偿带娃4年,没做好准备说再见
  • 中信银行:拟出资100亿元全资设立信银金融资产投资有限公司
  • 马新民卸任外交部条约法律司司长
  • 戴维·珀杜宣誓就任美国驻华大使
  • 上市不足一年,吉利汽车拟私有化极氪并合并:整合资源,杜绝重复投入
  • 马上评|颜宁“简历打假”的启示