接口json参数形式

接口json参数形式,第1张

接口json参数形式:
{
    "code": "200",
    "data": {
        "bz": "",
        "fxjg": [
            {
                "abcd": [
                    "/1/1.mp4",
                    "/1/2.mp4",
                    "/1/3.mp4",
                    "/1/4.mp4",
                    "/1/5.mp4"
                ]
            },
            {
                "efgh": []
            }
        ],
        "zhuj": "202204220000000001",
        "ertf": 5,
    },
    "message": "识别成功",
    "qqshu": 4465765,
    "signature": "周杰伦"
}

如上,是调用第三方接口后返回来的json数据,以上数据形式如下分析:

①数据的整体(最外层的大括号)可以封装成一个大的DTO用来接收调用接口成功后返回来的数据。DTO包含的成员变量就是大括号中的各项,如下:

@Data
@Accessors(chain = true)
public class GetParamterDTO implements Serializable {

    private String code;

    private String message;

    private ProjectVideoDto data;

    private Long qqshu;

    private String signature;
}

②实体中又包含实体:可以看到,大参数实体中,又包含了一个小的实体data,所以此时需要继续创建一个实体来承接data并把这个实体封装到大实体GetParamterDTO中:

@Data
@Accessors(chain = true)
public class ProjectVideoDto implements Serializable {

private String bz;

private String zhuj;

private String ertf;

private List<Map<String, List>> fxjg;

}

注意:①无论是调用接口传参还是接收接口返回的数据,起的变量名一定要和参数中的Key值保持一致

②注意data参数中的fxjg,在返回的参数data中,他的格式是这样的:

"fxjg": [
            {
                "abcd": [
                    "/1/1.jpg",
                    "/1/2.jpg",
                    "/1/3.jpg",
                    "/1/4.jpg",
                    "/1/5.jpg"
                ]
            },
            {
                "efgh": []
            }
        ],

在实体类中的类型定义是:

private List<Map<String, List>> fxjg;

如下图所示,方括号代表数组,在Java中则用List表示,数组中的每个元素是json格式的数据,即Map形式,而Map中,key是字符串,value又是一个数组,所以最后的实体类定义形式如上所示。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/720131.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存