Java如何对返回参数进行处理

 更新时间:2024年07月05日 09:04:49   作者:HelIanthuss  
这篇文章主要介绍了Java如何对返回参数进行处理问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Java对返回参数进行处理

根据返回参数格式获取其中的值

1.得到ResponseEntity<String> responseEntity对象

import org.springframework.http.ResponseEntity;

得到ResponseEntity<String> responseEntity对象

<200,

{
    "code":0,
    "data":{
        "list":[
            {
                "amount":0,
                "auditTime":"",
                "channelType":"",
                "createTime":"2019-08-13 17:01:55",
                "creditStatus":"",
                "edit":true,
                "fundsStatus":"",
                "id":372,
                "idNo":"",
                "lendRequestId":0,
                "mobile":"13289989000",
                "name":"客户姓名",
                "soinsStatus":"",
                "state":0,
                "stateText":"",
                "viewStateText":0
            }
        ]
    },
    "mask":"251eeedb-e214-47c6-aa0c-3eb6c7b67aa0",
    "msg":"success",
    "timestamp":1566089672
}

,{Server=[Tengine/2.1.1], Date=[Sun, 18 Aug 2019 00:54:32 GMT], Content-Type=[application/json;charset=UTF-8], Content-Length=[412], Connection=[keep-alive]}>

2.根据ResponseEntity<String> responseEntity对象

获取body部分,body为json格式字符串

String content = responseEntity.getBody();

content输出如下:

{
    "code":0,
    "data":{
        "list":[
            {
                "amount":0,
                "auditTime":"",
                "channelType":"",
                "createTime":"2019-08-13 17:01:55",
                "creditStatus":"",
                "edit":true,
                "fundsStatus":"",
                "id":372,
                "idNo":"",
                "lendRequestId":0,
                "mobile":"13243345566",
                "name":"客户姓名",
                "soinsStatus":"",
                "state":0,
                "stateText":"",
                "viewStateText":0
            }
        ]
    },
    "mask":"251eeedb-e214-47c6-aa0c-3eb6c7b67aa0",
    "msg":"success",
    "timestamp":1566089672
}

3.获取list中的id,name,mobile等字段值

  • 3.1将json字符串转化为json对象
//将json字符串转化为json对象
JSONObject json = JSONObject.parseObject(content);

{
    "msg":"success",
    "code":0,
    "data":{
        "list":[
            {
                "amount":0,
                "soinsStatus":"",
                "viewStateText":0,
                "edit":true,
                "mobile":"12324435555",
                "channelType":"",
                "creditStatus":"",
                "fundsStatus":"",
                "idNo":"",
                "auditTime":"",
                "createTime":"2019-08-13 17:01:55",
                "stateText":"",
                "name":"客户姓名",
                "id":372,
                "lendRequestId":0,
                "state":0
            }
        ]
    },
    "mask":"251eeedb-e214-47c6-aa0c-3eb6c7b67aa0",
    "timestamp":1566089672
}
  • 3.2 取出data部分
//取出data部分对象
JSONObject data = json.getJSONObject("data");

{
    "list":[
        {
            "amount":0,
            "soinsStatus":"",
            "viewStateText":0,
            "edit":true,
            "mobile":"13234444555",
            "channelType":"",
            "creditStatus":"",
            "fundsStatus":"",
            "idNo":"",
            "auditTime":"",
            "createTime":"2019-08-13 17:01:55",
            "stateText":"",
            "name":"客户姓名",
            "id":372,
            "lendRequestId":0,
            "state":0
        }
    ]
}
  • 3.3 data中包含有数组

list中的内容带有中括号[],所以要转化为JSONArray类型的对象

//转化为JSONArray类型的对象
JSONArray jsonArray = data.getJSONArray("list");


[
    {
        "amount":0,
        "soinsStatus":"",
        "viewStateText":0,
        "edit":true,
        "mobile":"13234444555",
        "channelType":"",
        "creditStatus":"",
        "fundsStatus":"",
        "idNo":"",
        "auditTime":"",
        "createTime":"2019-08-13 17:01:55",
        "stateText":"",
        "name":"客户姓名",
        "id":372,
        "lendRequestId":0,
        "state":0
    }
]
  • 3.4 若为多个数组

jsonArray.getJSONObject(index)

//随机选取一个数组
JSONObject idInfo = jsonArray.getJSONObject(randomInteger(0,jsonArray.size()));
String id=idInfo.getString("id");

java后端常用返回参数,复制粘贴直接用

@Data
public class CommonResult<T> {
    
    /**
     * 结果
     */
    private T data;
 
    /**
     * 状态码
     */
    private Integer code;
 
    /**
     * 状态码描述
     */
    private String message;
 
    public CommonResult() {}
 
    public CommonResult(Integer code, String message) {
        this.code = code;
        this.message = message;
    }
 
 
 
 
    protected CommonResult(Integer code, String message, T data) {
        this.code = code;
        this.message = message;
        this.data = data;
    }
 
    /**
     * 成功返回结果
     *
     */
    public static <T> CommonResult<T> success() {
        return new CommonResult<>(ExceptionCode.SUCCESS.getCode(), ExceptionCode.SUCCESS.getMessage());
    }
 
    /**
     * 成功返回结果
     *
     * @param data 获取的数据
     */
    public static <T> CommonResult<T> success(T data ) {
        return new CommonResult<>(ExceptionCode.SUCCESS.getCode(), ExceptionCode.SUCCESS.getMessage(), data);
    }
 
 
 
    /**
     * 成功返回结果
     *
     * @param data 获取的数据
     * @param  message 提示信息
     */
    public static <T> CommonResult<T> success(T data, String message) {
        return new CommonResult<>(ExceptionCode.SUCCESS.getCode(), message, data);
    }
 
    /**
     * 失败返回结果
     * @param errorCode 错误码
     * @param message 错误信息
     */
    public static <T> CommonResult<T> failed(Integer errorCode, String message) {
        return new CommonResult<>(errorCode, message, null);
    }
 
    /**
     * 失败返回结果
     * @param message 提示信息
     */
    public static <T> CommonResult<T> failed(String message) {
        return new CommonResult<>(ExceptionCode.FAILED.getCode(), message, null);
    }
 
    /**
     * 权限过期
     */
    public static <T> CommonResult<T> unauthorized() {
        return new CommonResult<>(ExceptionCode.FAILED.getCode(), "用户登录已过期,请重新登录!", null);
    }
 
}
public class ExceptionCode {
 
    public static final ExceptionCode SUCCESS = new ExceptionCode(200, "操作成功");
    public static final ExceptionCode FAILED = new ExceptionCode(500, "系统异常");
 
    private int code;
    private String message;
 
    public ExceptionCode(int code, String message) {
        this.code = code;
        this.message= message;
    }
 
    public ExceptionCode(String message) {
        this.message = message;
    }
 
    public Integer getCode() {
        return this.code;
    }
 
    public String getMessage() {
        return this.message;
    }
 
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Mybatis plus枚举处理器的具体使用

    Mybatis plus枚举处理器的具体使用

    在开发中,数据库表中的字段很常见会使用枚举类型来表示一些固定的取值范围,本文主要介绍了Mybatis plus枚举处理器的具体使用,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • Servlet编程第一步之从零构建Hello World应用详细步骤+图解

    Servlet编程第一步之从零构建Hello World应用详细步骤+图解

    本文详细介绍了Servlet和maven的基本概念及其在JavaWeb开发中的应用,首先解释了Servlet是一个在服务器上处理请求的Java程序,然后介绍了maven作为管理和构建Java项目的工具,需要的朋友可以参考下
    2024-10-10
  • SpringBoot如何使用@Cacheable进行缓存与取值

    SpringBoot如何使用@Cacheable进行缓存与取值

    这篇文章主要介绍了SpringBoot如何使用@Cacheable进行缓存与取值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • springboot实现excel表格导出几种常见方法

    springboot实现excel表格导出几种常见方法

    在日常的开发中避免不了操作Excel,下面这篇文章主要给大家介绍了关于springboot实现excel表格导出的几种常见方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • MyBatis执行Sql的流程实例解析

    MyBatis执行Sql的流程实例解析

    这篇文章主要介绍了MyBatis执行Sql的流程实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • Java获取本机IP地址的三种方法总结

    Java获取本机IP地址的三种方法总结

    这篇文章主要为大家详细介绍了java获取本机IP地址的三种方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • SpringBoot应用中出现的Full GC问题的场景与解决

    SpringBoot应用中出现的Full GC问题的场景与解决

    这篇文章主要为大家详细介绍了SpringBoot应用中出现的Full GC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-04-04
  • 一文搞懂Java ScheduledExecutorService的使用

    一文搞懂Java ScheduledExecutorService的使用

    JUC包(java.util.concurrent)中提供了对定时任务的支持,即ScheduledExecutorService接口。本文主要对ScheduledExecutorService的使用进行简单的介绍,需要的可以参考一下
    2022-11-11
  • 浅谈Spring的两种配置容器

    浅谈Spring的两种配置容器

    这篇文章主要介绍了浅谈Spring的两种配置容器,介绍了其实现以及简单的实例,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • intelliJ idea 2023 配置Tomcat 8图文教程

    intelliJ idea 2023 配置Tomcat 8图文教程

    这篇文章主要介绍了intelliJ idea 2023 配置Tomcat 8教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06

最新评论