springboot定义统一的返回json渲染格式(代码片段)

健康平安的活着 健康平安的活着     2022-12-15     532

关键词:

一  实操案例

1.定义map类型

package com.ljf.spring.boot.demo.common;

import java.util.LinkedHashMap;
import java.util.Map;

/**
 * @ClassName: R
 * @Description: TODO
 * @Author: liujianfu
 * @Date: 2022/12/03 15:53:28 
 * @Version: V1.0
 **/
public class R 
    private Boolean success;
    private Integer code;
    private String message;
    private Map<String, Object> data = new LinkedHashMap<String, Object>();
    //把构造方法私有
    private R() 

    //成功静态方法
    public static R ok() 
        R r = new R();
        r.setSuccess(true);
        r.setCode(ResultCode.SUCCESS);
        r.setMessage("成功");
        return r;
    

    //失败静态方法
    public static R error() 
        R r = new R();
        r.setSuccess(false);
        r.setCode(ResultCode.ERROR);
        r.setMessage("失败");
        return r;
    

    public R success(Boolean success)
        this.setSuccess(success);
        return this;
    

    public R message(String message)
        this.setMessage(message);
        return this;
    

    public R code(Integer code)
        this.setCode(code);
        return this;
    

    public R data(String key, Object value)
        this.data.put(key, value);
        return this;
    

    public R data(Map<String, Object> map)
        this.setData(map);
        return this;
    
    public Boolean getSuccess() 
        return success;
    

    public void setSuccess(Boolean success) 
        this.success = success;
    

    public Integer getCode() 
        return code;
    

    public void setCode(Integer code) 
        this.code = code;
    

    public String getMessage() 
        return message;
    

    public void setMessage(String message) 
        this.message = message;
    

    public Map<String, Object> getData() 
        return data;
    

    public void setData(Map<String, Object> data) 
        this.data = data;
    

2.定义错误编码

package com.ljf.spring.boot.demo.common;

public interface ResultCode 

    public static Integer SUCCESS = 20000; //成功

    public static Integer ERROR = 20001; //失败

3.使用

    @ResponseBody
    @GetMapping("/allMp")
    public R findAllUserByMp(
            @RequestParam(name = "pageNum", required = false, defaultValue = "1")
                    int pageNum,
            @RequestParam(name = "pageSize", required = false, defaultValue = "10")
                    int pageSize)
        System.out.println("进入查询......");
        return R.ok().data("items",userService.queryAllUserByMp(pageNum,pageSize));
    

4.效果

 

springboot返回统一的json标准格式(代码片段)

自定义状态码枚举类封装返回结果全局异常捕获处理,使用@RestControllerAdvice注解拦截Controller方法的返回值,统一处理返回值/响应体创建Controller,准备测试请求接口,查看响应结果近年来,随着移动互联网... 查看详情

springboot无侵入式实现api接口统一json格式返回(代码片段)

无侵入式 统一返回JSON格式其实本没有没打算写这篇博客的,但还是要写一下写这篇博客的起因是因为,现在呆着的这家公司居然没有统一的API返回格式?,询问主管他居然告诉我用HTTP状态码就够用了(fxxk)&#... 查看详情

springboot无侵入式实现api接口统一json格式返回(代码片段)

无侵入式 统一返回JSON格式其实本没有没打算写这篇博客的,但还是要写一下写这篇博客的起因是因为,现在呆着的这家公司居然没有统一的API返回格式?,询问主管他居然告诉我用HTTP状态码就够用了(fxxk)&#... 查看详情

springboot定义统一的返回异常提示数据格式(代码片段)

一描述1.1没有加全局异常处理1.这里设置一个字符串为空指针异常,然后看看返回给前端的信息。 2.返回结果 3.效果看起来不友好的提示1.2 添加全局异常处理1.代码:添加一个全局异常处理类@ControllerAdvicepublicclassGlob... 查看详情

自定义统一api返回json格式(app后台框架搭建三)

在统一json自定义格式的方式有多种:1,直接重写@reposeBody的实现,2,自定义一个注解,自己去解析对象成为json字符串进行返回第一种方式,我就不推荐,想弄得的话,可以自己去研究一下源码第二种方式,主要通过定义注解,... 查看详情

springboot异常注解

参考技术A@ControllerAdvice,是Spring3.2提供的新注解,它是一个Controller增强器,可对controller中被@RequestMapping注解的方法加一些逻辑处理。最常用的就是异常处理需要配合@ExceptionHandler使用。当将异常抛到controller时,可以对异常进行统一... 查看详情

请求springboot接口的路径不存在,如何自定义statuscode和返回的json格式(代码片段)

请求springboot接口的路径不存在,如何自定义statuscode和返回的JSON格式一、背景如果你有个springboot项目,如果访问它不存在的endpoint,会得到404状态码,并且如下的错误信息"timestamp":"2022-10-04T08:40:27.808+00... 查看详情

请求springboot接口的路径不存在,如何自定义statuscode和返回的json格式(代码片段)

请求springboot接口的路径不存在,如何自定义statuscode和返回的JSON格式一、背景如果你有个springboot项目,如果访问它不存在的endpoint,会得到404状态码,并且如下的错误信息"timestamp":"2022-10-04T08:40:27.808+00... 查看详情

springboot统一功能处理(代码片段)

SpringBoot统一功能处理前言一、用户登录权限效验1.1最初的用户登录验证1.2SpringAOP用户统一登录验证的问题1.3Spring拦截器1.3.1准备工作1.3.2自定义拦截器1.3.3将自定义拦截器加入到系统配置1.4拦截器实现原理1.4.1实现原理源码分析1.4... 查看详情

springboot如何统一后端返回格式?老鸟们都是这样玩的!

大家好,我是飘渺。今天我们来聊一聊在基于SpringBoot前后端分离开发模式下,如何友好的返回统一的标准格式以及如何优雅的处理全局异常。首先我们来看看为什么要返回统一的标准格式?为什么要对SpringBoot返回统... 查看详情

springboot统一后端返回格式?老鸟们都是这样玩的!(代码片段)

大家好,我是bigsai。今天我们来聊一聊在基于SpringBoot前后端分离开发模式下,如何友好的返回统一的标准格式以及如何优雅的处理全局异常。首先我们来看看为什么要返回统一的标准格式?为什么要对SpringBoot返回统... 查看详情

接口返回值response统一标准格式(代码片段)

一、为什么要对springboot的接口返回值统一标准格式  springboot默认情况下的response格式:String、Object、void、异常,以上几种情况,如果和客户端开发人员联调接口,他们会很懵逼,因为你给他们的接口没有一个统一的格式,客... 查看详情

springboot项目统一结果,统一异常,统一日志,写的太好了。。(代码片段)

作者:永动的图灵机链接:https://juejin.cn/post/6844904033488994317统一结果返回目前的前后端开发大部分数据的传输格式都是json,因此定义一个统一规范的数据格式有利于前后端的交互与UI的展示。统一结果的一般形式是否... 查看详情

springboot如何统一后端返回格式?老鸟们都是这样玩的!(代码片段)

...c;我是只爱教妹学Java的秃头哥。今天我们来聊一聊在基于SpringBoot前后端分离开发模式下,如何友好的返回统一的标准格式以及如何优雅的处理全局异常。首先我们来看看为什么要返回统一的标准格式?为什么要对SpringBoot... 查看详情

springboot返回统一数据格式及其原理浅析

大家都知道,前后分离之后,后端响应最好以统一的格式的响应.譬如:名称描述  status状态码,标识请求成功与否,如[1:成功;-1:失败]  errorCode错误码,给出明确错误码,更好的应对业务异常;请求成功该值可为空&nbs... 查看详情

springboot项目统一结果,统一异常,统一日志,写的太好了!(代码片段)

👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇作者:永动的图灵机链接:https://juejin.cn/post/6844904033488994317统一结果返回目前的前后端开发大部分数据的传输格式都是json,因此定义一个... 查看详情

springsecurityoauth2认证端异常处理(基于前后分离统一返回json)

...化器如下,可以得出默认的返回格式:所以我们需要重新定义自己的WebResponseExceptionTranslator,以及自己的oauth2异常以及其序列化器(也可以不定义,重写handleOauth2Exception即可)自定义oauth2异常处理类,CustomWebResponseExceptionTranslator,... 查看详情

springboot定义优雅全局统一restfulapi响应框架三(代码片段)

...数对应不同模块对应错误格式如下错误接口packagecn.soboys.springbootrestfulapi.common.error;/***@author公众号程序员三时*@version1.0*@date2023/5/221:33*@webSitehttps://g 查看详情