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

RestTemplate 的用法

1.引入对应依赖

2.private final RestTemplate restTemplate;

3.上代码

@Service
@Slf4j
public class CspWarehouseServiceImpl implements ICspWarehouseService {
private final RestTemplate restTemplate;public CspWarehouseServiceImpl() {this.restTemplate = new RestTemplate();}private final String returnMessage = "无数据,参数都正确,没有数据";/*** 仓库温度gps请求** @param url              url* @param gpsReqDTO        请求采纳数* @param responseBodyType json类型* @param <T>              参数* @return 结果*/public <T> T exchange(String url,String gpsReqDTO,Class<T> responseBodyType) {try {log.info("请求仓库温度gps接口请求报文={}", gpsReqDTO);HttpHeaders headers = new HttpHeaders();headers.setContentType(MediaType.APPLICATION_JSON);HttpEntity<String> requestEntity = new HttpEntity<>(gpsReqDTO, headers);ResponseEntity<T> responseEntity = restTemplate.postForEntity(url,requestEntity,responseBodyType);return responseEntity.getBody();} catch (Exception e) {log.error("调用仓库温度GPS接口异常=", e);return null;}}}
public List<CspWarehouseEquipment> selectCspWarehouseEquipmentList(CspWarehouseEquipment cspWarehouseEquipment) {CspGPSReqDTO gpsReqDTO = buildGpsRequest(equipmentNumberList, "GetColdStorageCurrentTemp", startTime, endTime);String reqDto = objectMapper.writeValueAsString(gpsReqDTO);String url = environment.getProperty("gps.platform.coldTmpUrl");JSONObject returnObjDevice = exchange(url, reqDto, JSONObject.class);if (returnObjDevice != null && (!returnMessage.contains(returnObjDevice.getString("Rtn_Data"))&& !"[]".equals(returnObjDevice.getString("Rtn_Data")) &&!returnMessage.contains(returnObjDevice.getString("Rtn_Msg")))) {Integer rtnCode = returnObjDevice.getInteger("Rtn_Code");if (rtnCode != null && rtnCode == 0) {if (!"无数据!".equals(returnObjDevice.getString("Rtn_Data"))) {List<CspWarehouseTempInterface> temperatureDetailsList = JSON.parseObject(returnObjDevice.getString("Rtn_Data"),new TypeReference<List<CspWarehouseTempInterface>>() {});structureData(list, temperatureDetailsList);}}}
}
http://www.lryc.cn/news/158144.html

相关文章:

  • postgresql-使用plpgsql批量插入用户测试数据
  • 通过Siri打造智能爬虫助手:捕获与解析结构化数据
  • 【电源专题】典型设备的接地设计
  • LeetCode-216-组合总和Ⅱ
  • [技术杂谈]几款常用的安装包制作工具
  • 旋转屏幕显示方向-rk3568
  • 07 Linux补充|秋招刷题|9月6日
  • 【JavaGuide学习笔记】Day.1
  • 大数据课程K18——Spark的ALS算法与显式矩阵分解
  • Android Jetpack架构组件库:Hilt
  • 企业帮助中心如何在线搭建,还能多场景使用呢?
  • C++ primer plus第十五章编程练习答案
  • 【精品】商品规格 数据库表 设计
  • 无人机集群路径规划MATLAB:孔雀优化算法POA求解无人机集群三维路径规划
  • Dockerfile创建镜像异常问题解决
  • 使用libcurl请求https的get/post
  • AUTOSAR规范与ECU软件开发(实践篇)7.3 MCAL模块配置方法及常用接口函数介绍之GPT的配置
  • Android 性能优化--内存优化分析总结
  • buuctf web 前5题
  • stable diffusion实践操作-提示词-人物服饰
  • Tomcat加载静态资源--防止SpringMVC拦截
  • 【AI数字人】如何基于ER-NeRF自训练AI数字人
  • 多目标应用:基于多目标哈里斯鹰优化算法(MOHHO)的微电网多目标优化调度研究MATLAB
  • [运维|中间件] 东方通TongWeb忘记密码后修改密码
  • 无涯教程-Android Mock Test函数
  • 保留网络[02/3]:大型语言模型转换器的继任者”
  • 微信小程序-生成canvas图片并保存到手机相册
  • 设计模式8:代理模式-动态代理
  • tcp字节传输(java)-自定义包头和数据识别
  • pyspark 系统找不到指定的路径; \Java\jdk1.8.0_172\bin\java