From 98df1b76326afb757e05861ab958d1454d08874d Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期一, 21 四月 2025 11:20:36 +0800 Subject: [PATCH] 注释完善 --- pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/utils/RestTemplateUtils.java | 97 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 97 insertions(+), 0 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/utils/RestTemplateUtils.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/utils/RestTemplateUtils.java new file mode 100644 index 0000000..31deb69 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/utils/RestTemplateUtils.java @@ -0,0 +1,97 @@ +package com.dy.pipIrrRemote.utils; + +import com.alibaba.fastjson2.JSONObject; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.*; +import org.springframework.stereotype.Component; +import org.springframework.util.MultiValueMap; +import org.springframework.web.client.RestTemplate; + +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +/** + * @author ZhuBaoMin + * @date 2024-05-07 17:07 + * @LastEditTime 2024-05-07 17:07 + * @Description + */ +@Component +public class RestTemplateUtils { + + @Autowired + private RestTemplate restTemplate; + + public JSONObject get(String url, Map<String, Object> queryParams) throws IOException { + return get(url, queryParams, new HashMap<>(1)); + } + + public JSONObject get(String url, Map<String, Object> queryParams, Map<String, String> headerParams) throws IOException { + String tempUrl = setParamsByAppendUrl(queryParams, url); + HttpHeaders headers = new HttpHeaders(); + headerParams.forEach(headers::add); + HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(null, headers); + ResponseEntity<String> response = restTemplate.exchange(tempUrl, HttpMethod.GET, httpEntity, String.class); + return JSONObject.parseObject(response.getBody()); + } + + public JSONObject get2(String url, Map<String, Object> queryParams, Map<String, String> headerParams) throws IOException { + String tempUrl = setParamsByPath(queryParams, url); + HttpHeaders headers = new HttpHeaders(); + headerParams.forEach(headers::add); + HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(null, headers); + ResponseEntity<String> response = restTemplate.exchange(tempUrl, HttpMethod.GET, httpEntity, String.class, queryParams); + return JSONObject.parseObject(response.getBody()); + } + + public JSONObject post(String url, String json, Map<String, String> headerParams) { + HttpHeaders headers = new HttpHeaders(); + headerParams.forEach(headers::add); + headers.setContentType(MediaType.APPLICATION_JSON); + headers.add("Accept", MediaType.APPLICATION_JSON.toString()); + HttpEntity<String> httpEntity = new HttpEntity<>(json, headers); + ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.POST, httpEntity, String.class); + return JSONObject.parseObject(response.getBody()); + } + + private String setParamsByPath(Map<String, Object> queryParams, String url) { + // url?id={id}&name={name} + if (queryParams == null || queryParams.isEmpty()) { + return url; + } + StringBuilder sb = new StringBuilder(); + try { + for (Map.Entry<String, Object> entry : queryParams.entrySet()) { + sb.append("&").append(entry.getKey()).append("=").append("{").append(entry.getKey()).append("}"); + } + if (!url.contains("?")) { + sb.deleteCharAt(0).insert(0, "?"); + } + } catch (Exception e) { + e.printStackTrace(); + } + return url + sb; + } + + private String setParamsByAppendUrl(Map<String, Object> queryParams, String url) { + // url?id=1&name=zzc + if (queryParams == null || queryParams.isEmpty()) { + return url; + } + StringBuilder sb = new StringBuilder(); + try { + for (Map.Entry<String, Object> entry : queryParams.entrySet()) { + sb.append("&").append(entry.getKey()).append("="); + sb.append(entry.getValue()); + } + if (!url.contains("?")) { + sb.deleteCharAt(0).insert(0, "?"); + } + } catch (Exception e) { + e.printStackTrace(); + } + return url + sb; + } + +} -- Gitblit v1.8.0