封装统一的json返回结果,包含状态信息,操作结果,返回值等示例

1、统一定义json结构

package com.esoon.eda.web.model;

import lombok.Data;

@Data
public class JsonResult<T> {
    private T data;
    private String code;
    private String msg;

    public JsonResult(){
        this.code="0";
        this.msg="操作成功!";
    }

    public JsonResult(String code,String msg){
        this.code=code;
        this.msg=msg;
    }

    public JsonResult(T data){
        this.data=data;
        this.code="0";
        this.msg="操作成功!";
    }

    public JsonResult(T data,String msg){
        this.data=data;
        this.code="0";
        this.msg=msg;
    }
}

2、controller控制器返回值修改结果

package com.esoon.eda.web.controller;

import com.esoon.eda.web.model.JsonResult;
import com.esoon.eda.web.model.User;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping("/jsonresult")
public class JsonResultController {
    @RequestMapping("/user")
    public JsonResult<User> getUser(){
        User user =  new User(10,"burns","beijing");
        return new JsonResult(user);
    }

    @RequestMapping("/list")
    public JsonResult<List<User>> getUserList(){
        List<User> userList = new ArrayList<>();
        User user1 = new User(1,"姚明","上海");
        User user2 = new User(2,"李刚","深圳");
        userList.add(user1);
        userList.add(user2);
        return new JsonResult<>(userList,"获取用户列表成功");
    }

    @RequestMapping("/map")
    public JsonResult<Map<String,Object>> getMap(){
        Map<String,Object> map = new HashMap<>(3);
        User user = new User(1,"贾志杰","唐山");
        map.put("作者信息",user);
        map.put("blog地址","https://burns.blog.csdn.net/");
        map.put("公众号","burns");
        map.put("B站","love's sigh");
        return new JsonResult<>(map);
    }
//    @RequestMapping("/map1")
//    public Map<String,Object> getMap1(){
//        Map<String,Object> map = new HashMap<>(3);
//        User user = new User(1,"贾志杰",null);
//        map.put("作者信息",user);
//        map.put("blog地址","https://burns.blog.csdn.net/");
//        map.put("公众号","burns");
//        map.put("B站",null);
//        return map;
//    }
}

3、对单个对象的执行结果

http://localhost:8888/jsonresult/user

 

4、对list集合的结果返回,自定义的返回结果

http://localhost:8888/jsonresult/list

 

 5、对键值对map的类型返回结果

http://localhost:8888/jsonresult/map

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱的叹息

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值