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;
    }
 
}

总结

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

相关文章

  • Java中的System.getProperty()详解

    Java中的System.getProperty()详解

    System.getProperty("XXX")方法用来读取JVM中的系统属性,那么java 虚拟机中的系统属性使用在运行java程序的时候java -D配置,有两种方式,一种是在命令行配置另一种是在IDE中配置,本文给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2023-09-09
  • SpringBoot整合ELK实现日志监控

    SpringBoot整合ELK实现日志监控

    这篇文章主要为大家详细介绍了SpringBoot整合ELK实现日志监控的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-11-11
  • java 文件流的处理方式 文件打包成zip

    java 文件流的处理方式 文件打包成zip

    这篇文章主要介绍了java 文件流的处理方式 文件打包成zip,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • java根据当前时间获取yyyy-MM-dd HH:mm:ss标准格式的时间代码示例

    java根据当前时间获取yyyy-MM-dd HH:mm:ss标准格式的时间代码示例

    在Java中可以使用java.time包中的LocalDateTime类和DateTimeFormatter类来获取并格式化当前时间为yyyy-MM-dd HH:mm:ss的格式,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-10-10
  • Spring中bean标签的用法详解

    Spring中bean标签的用法详解

    Bean标签一般用于配置对象交由Spring 来创建,这篇文章主要来和大家详细聊聊Spring中bean标签的用法,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-06-06
  • String.trim()消除不了空格的问题及解决

    String.trim()消除不了空格的问题及解决

    这篇文章主要介绍了String.trim()消除不了空格的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • 浅谈Spring Boot 开发REST接口最佳实践

    浅谈Spring Boot 开发REST接口最佳实践

    这篇文章主要介绍了浅谈Spring Boot 开发REST接口最佳实践,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • 详解Java分布式系统中一致性哈希算法

    详解Java分布式系统中一致性哈希算法

    这篇文章主要介绍了Java分布式系统中一致性哈希算法,对算法感兴趣的同学,可以参考下
    2021-04-04
  • Springboot中Jackson用法详解

    Springboot中Jackson用法详解

    Springboot自带默认json解析Jackson,可以在不引入其他json解析包情况下,解析json字段,下面我们就来聊聊Springboot中Jackson的用法吧
    2025-01-01
  • SpringBoot实现快递物流查询功能(快递鸟)

    SpringBoot实现快递物流查询功能(快递鸟)

    本文将基于springboot2.4.0实现快递物流查询,物流信息的获取通过快递鸟第三方实现,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-10-10

最新评论