Java泛型对象在http请求和响应对象中的封装

Java泛型对象在http请求和响应对象中的封装代码语言:javascript代码运行次数:0运行复制public class MySystemBaseResVo<T> { 注意:类的后面需要带上<T>,否则

Java泛型对象在http请求和响应对象中的封装

Java泛型对象在http请求和响应对象中的封装

代码语言:javascript代码运行次数:0运行复制
public class MySystemBaseResVo<T> {   //注意:类的后面需要带上<T>,否则数据无法封装
    private String err_no;
    private String err_tips;
    private T data;

    public String getErr_no() {
        return err_no;
    }

    public void setErr_no(String err_no) {
        this.err_no = err_no;
    }

    public String getErr_tips() {
        return err_tips;
    }

    public void setErr_tips(String err_tips) {
        this.err_tips = err_tips;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }
}


//发起请求封装到 T泛型类中
String resultJsonData = HttpClientV2Util.doPostForJson(url, json);

        MySystemBaseResVo baseResVo = JSON.parseObject(resultJsonData, MySystemBaseResVo.class);
        if(baseResVo.getData() != null) {
            T resp = JSON.parseObject(baseResVo.getData().toString(), responseClass);
            baseResVo.setData(resp);
        }
        

//在具体使用的类中强制转换为 具体的实现类
if(baseResVo.getData() != null) {
    //匹配
    if (baseResVo.getData() instanceof MySettingResVo) {
        MySettingResVo mySettingResVo = (MySettingResVo) baseResVo.getData();
        logger.info("mySettingResVo=[{}]",GsonUtils.toJson(mySettingResVo));
    }else if(baseResVo.getData() instanceof MySystemBaseResVo){
        MySystemBaseResVo mySystemBaseResVo = (MySystemBaseResVo) baseResVo.getData();
        logger.info("mySystemBaseResVo=[{}]",GsonUtils.toJson(mySystemBaseResVo));
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2023-09-08,如有侵权请联系 cloudcommunity@tencent 删除http对象泛型数据java

发布者:admin,转转请注明出处:http://www.yc00.com/web/1754976862a5223608.html

相关推荐

  • Java泛型对象在http请求和响应对象中的封装

    Java泛型对象在http请求和响应对象中的封装代码语言:javascript代码运行次数:0运行复制public class MySystemBaseResVo<T> { 注意:类的后面需要带上<T>,否则

    1月前
    220

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信