当前位置: 首页 > wzjs >正文

长沙创意网站建设新闻发布平台有哪些

长沙创意网站建设,新闻发布平台有哪些,网络 网站建设,收费网站怎么建立文章目录 前言正文示例导包错误导致问题全部代码:输出结果:String转Map or 对象 结尾 前言 在代码开发过程中,调用起三方的接口获取数据。但是总会有一些其他原因导致接口调用不成功,影响整体的接口效率。一般我们都是自己创建一…

文章目录

      • 前言
      • 正文
        • 示例
        • 导包错误导致问题
        • 全部代码:
        • 输出结果:
        • String转Map or 对象
      • 结尾

前言

在代码开发过程中,调用起三方的接口获取数据。但是总会有一些其他原因导致接口调用不成功,影响整体的接口效率。一般我们都是自己创建一个相同结构的对象去接收。如果接口地址存在差异,构造方法缺失,接收对象不对都会导致失败。接口地址可以重复检查保证一致,构造方法可以通过lombok插件补全,但是接收对象太大太多参数,或者参数还没有完全确定好,后面会有变动的话就比较影响对接效率了。

我们可以通过TypeReference指定反序列化的类型。通过调用接口,用String来接收响应数据,然后简单判断接口是否成功,这样就不需要去关心响应对象差异的问题了。

也就是StringList<Object>

也可以转 Map<String, Object>Object…直接将 TypeReference 指定的类型替换一下就好了。

正文

示例
String str = EntityUtils.toString(response.getEntity());
JSONObject json_test = JSONObject.parseObject(str);
JSONArray dateArray = json_test.getJSONArray("data");
ObjectMapper mapper = new ObjectMapper();
TypeReference<List<PersonaRecord>> typeRef = new TypeReference<List<PersonaRecord>>() {
};
List<PersonaRecord> deviceStatusList = mapper.readValue(dateArray.toJSONString(), typeRef);
导包错误导致问题

image-20240614114554466

导入的包是这个

image-20240614113118320

重新导入包:

image-20240620151804892

全部代码:

image-20240620151840682

package rcts.shine.push.infrastructure.utils;import com.alibaba.fastjson2.JSONArray;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import rcts.shine.push.infrastructure.db.entity.export.PersonaRecord;import java.util.ArrayList;
import java.util.List;/*** @author shiner* @date 2024/6/14*/@Slf4j
@Component
public class JsonUtil {public static void main(String[] args) {testTypeReference();}public static void testTypeReference() {List<PersonaRecord> list = new ArrayList<>();PersonaRecord record = new PersonaRecord();record.setUserId("231423432535");record.setUserPhone("13326653344");record.setIdentifyId("f44tjnd@hgoi0");list.add(record);list.add(record);list.add(record);String jsonString = JSONArray.toJSONString(list);try {ObjectMapper mapper = new ObjectMapper();TypeReference<List<PersonaRecord>> typeRef = new TypeReference<List<PersonaRecord>>() {};List<PersonaRecord> readValue = mapper.readValue(jsonString, typeRef);System.out.println(readValue);} catch (JsonProcessingException e) {throw new RuntimeException(e);}}
}
输出结果:

image-20240620151950360

String转Map or 对象
Map<String, Object> model1 = JSONObject.parseObject(JSONObject.toJSONString(request), new TypeReference<Map<String, Object>>(){});PrintData model2 = JSONObject.parseObject(JSONObject.toJSONString(request), new TypeReference<PrintData>(){});

结尾

tips:可以将TypeReference类型指定然后抽离出来,把testTypeReference()变成一个工具方法。重复使用而不是一直造轮子。

http://www.dtcms.com/wzjs/199048.html

相关文章:

  • 云南网站建设的步骤找公司做网站多少钱
  • 韩国做美食的视频网站公司员工培训方案
  • 安康网站建设公司电话宁波网站推广优化哪家正规
  • php网站开发需求文档关键词挖掘爱网站
  • 网站建设预付流程南昌seo教程
  • 怎么查那些人输入做网站seo技术教程网
  • 不花钱建网站seo推广百度百科
  • 阜阳做网站的网络公司郑州百度网站快速优化
  • 盈利性网站的步骤百度竞价点击神器
  • 赚钱网站开发百度官方客服
  • 网站建设的税率是多少2024年的新闻时事热点论文
  • 备案的域名做电影网站南京今日新闻头条
  • 网址导航打不开怎么办南宁seo排名外包
  • 教育app定制兰州网站seo优化
  • 保定专门做网站的公司南宁网络推广热线
  • 厦门网站建设商家关键词排名查询api
  • 企业网站设计步骤百度手机软件应用中心
  • 福建省建设厅网站信用评分北京seo教师
  • 信息化工作总结 网站建设关键词排名优化公司成都
  • 网站建设模式建个网站费用大概多少钱一年
  • 广东省政府集约化网站建设营销网站策划方案
  • 政府机关单位网站建设推广营销策划方案
  • 哈尔滨香坊城乡建设委员会网站百度平台推广的营销收费模式
  • wordpress淘宝内容公司seo是什么职位
  • 少林寺网站谁做的福州seo代理商
  • 网站页面制作建议网站排名怎么做
  • 商家在携程旅游网站怎样做宣传网站优化和网站推广
  • 网络营销做女鞋的网站设计注册域名在哪里注册
  • 深圳做分销商城网站需要一个网站
  • 软装潢.企业网站建设帆软社区app