2024 java使用Graceful Response,告别自己去封装响应,可以接收数据异常,快看我这一篇,足够你用!

参考官网手册地址:快速入门 | Docs

一、导入依赖(根据springboot查看对应依赖版本)

复制代码
 <!--    Graceful    -->
        <dependency>
            <groupId>com.feiniaojin</groupId>
            <artifactId>graceful-response</artifactId>
            <version>3.5.2-boot2</version>
        </dependency>

二、配置文件

复制代码
#graceful
graceful-response.response-class-full-name
# Response风格,不配置默认为0
graceful-response.response-style=1
# 自定义的成功提示,默认为ok
graceful-response.default-success-msg=success
# 自定义的成功响应码,不配置则为0
graceful-response.default-success-code=200
# 自定义的失败提示,默认为error
graceful-response.default-error-msg=error
# 自定义的失败响应码,默认为1
graceful-response.default-error-code=204
# 设置是否将原生异常错误信息detailMessage字段填充到Response的msg中
# 默认为false,即不打开
graceful-response.origin-exception-using-detail-message=true
# 是否打印异常日志,默认为false
print-exception-in-global-advice: false

1.特别注意 ,两种响应风格

响应风格0

复制代码
{
    "status": {
        "code": "200",
        "msg": "success"
    },
    "payload": {
       //返回的数据
    }
}

响应风格1(个人常用)

复制代码
{
    "code": "200",
    "msg": "success",
    "data": {
       //返回的数据
    }
}

两种都不是,请看官网手册,自定义就好

自定义Response格式 | Docs

2.还有关于异常的,请参考官网手册,则需选择

自定义异常和错误码 | Docs

三、启动类添加注解

复制代码
@EnableGracefulResponse

四、直接使用

复制代码
1.controller层
   @Autowired
    private 自己的Service 自己的Service;
  /**
     * 根据主键获取详细信息
     *
     * @param id 主键
     * @return 信息详情
     */
    @GetMapping("/getInfo/{id}")
    public 自己的实体类 getInfo(@PathVariable Integer id) {
        return 自己的Service.getInfo(id);
    }



2.service层
    /**
     * 根据主键获取详细信息
     *
     * @param id 主键
     * @return 信息详情
     */
   自己的实体类 getInfo(Integer id);



3.serviceImpl层
 /**
     * 根据主键获取详细信息
     *
     * @param id 主键
     * @return 信息详情
     */
  @Override
    public 自己的实体类 getInfo(Integer id) {
       //根据id获取实体类的逻辑
        自己的实体类 res=....
        return res;
    }

五、运行效果

相关推荐
geovindu3 分钟前
java: Facade Pattern
java·开发语言·后端·外观模式·结构型模式
listening7774 分钟前
HarmonyOS 6.1 元服务深度优化:从“秒开”到“常驻”的极致体验
java·开发语言·spring
AC赳赳老秦23 分钟前
司法公开数据采集应用:OpenClaw 抓取裁判文书公开信息,批量整理同类参考案例
java·大数据·python·数据挖掘·数据分析·php·openclaw
笑小枫29 分钟前
用 Claude Code 推翻重写笑小枫网站
java·人工智能·spring boot·ai编程
霸道流氓气质42 分钟前
ApiPost 中配置自动获取 Token 并调用业务接口完整指南
java·服务器·数据库
独隅1 小时前
IntelliJ IDEA 接入多种AI大模型插件终极指南(2026.1 企业合规版)
java·人工智能·intellij-idea
还是奇怪2 小时前
Simon Willison 用 DSPy 优化 Datasette Agent 提示词:提示工程正在变成可测试的软件工程
java·开发语言·软件工程
zfoo-framework2 小时前
1.ansible安装 2.虚拟机克隆
java
码上解惑2 小时前
从 Dify 工作流说起:常用节点怎么选、怎样组合?
java·人工智能·ai·agent·dify·智能体·spring ai
青山木3 小时前
Hot 100 --- 岛屿数量
java·数据结构·算法·leetcode·深度优先·广度优先