当前位置:网站首页>Resttemplate remote call tool class
Resttemplate remote call tool class
2022-07-01 22:39:00 【Yang Zongde】
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import java.util.Map;
/** * RestTemplate Remote call tool class * @author yzd */
@Service
public class RestTemplateUtil {
private static RestTemplate restTemplate;
@Autowired
public void setRestTemplate(RestTemplate restTemplate) {
RestTemplateUtil.restTemplate = restTemplate;
}
// ----------------------------------GET-------------------------------------------------------
/** * GET Request call mode * * @param url request URL * @param responseType Return object type * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> get(String url, Class<T> responseType) {
return restTemplate.getForEntity(url, responseType);
}
/** * GET Request call mode * * @param url request URL * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> get(String url, Class<T> responseType, Object... uriVariables) {
return restTemplate.getForEntity(url, responseType, uriVariables);
}
/** * GET Request call mode * * @param url request URL * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> get(String url, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.getForEntity(url, responseType, uriVariables);
}
/** * With request header GET Request call mode * * @param url request URL * @param headers Request header parameters * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> get(String url, Map<String, String> headers, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return get(url, httpHeaders, responseType, uriVariables);
}
/** * With request header GET Request call mode * * @param url request URL * @param headers Request header parameters * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> get(String url, HttpHeaders headers, Class<T> responseType, Object... uriVariables) {
HttpEntity<?> requestEntity = new HttpEntity<>(headers);
return exchange(url, HttpMethod.GET, requestEntity, responseType, uriVariables);
}
/** * With request header GET Request call mode * * @param url request URL * @param headers Request header parameters * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> get(String url, Map<String, String> headers, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return get(url, httpHeaders, responseType, uriVariables);
}
/** * With request header GET Request call mode * * @param url request URL * @param headers Request header parameters * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> get(String url, HttpHeaders headers, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<?> requestEntity = new HttpEntity<>(headers);
return exchange(url, HttpMethod.GET, requestEntity, responseType, uriVariables);
}
// ----------------------------------POST-------------------------------------------------------
/** * POST Request call mode * * @param url request URL * @param responseType Return object type * @return */
public static <T> ResponseEntity<T> post(String url, Class<T> responseType) {
return restTemplate.postForEntity(url, HttpEntity.EMPTY, responseType);
}
/** * POST Request call mode * * @param url request URL * @param requestBody Request parameter body * @param responseType Return object type * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> post(String url, Object requestBody, Class<T> responseType) {
return restTemplate.postForEntity(url, requestBody, responseType);
}
/** * POST Request call mode * * @param url request URL * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> post(String url, Object requestBody, Class<T> responseType, Object... uriVariables) {
return restTemplate.postForEntity(url, requestBody, responseType, uriVariables);
}
/** * POST Request call mode * * @param url request URL * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> post(String url, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.postForEntity(url, requestBody, responseType, uriVariables);
}
/** * With request header POST Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> post(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return post(url, httpHeaders, requestBody, responseType, uriVariables);
}
/** * With request header POST Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> post(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return post(url, requestEntity, responseType, uriVariables);
}
/** * With request header POST Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> post(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return post(url, httpHeaders, requestBody, responseType, uriVariables);
}
/** * With request header POST Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> post(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return post(url, requestEntity, responseType, uriVariables);
}
/** * Custom request header and request body POST Request call mode * * @param url request URL * @param requestEntity Request headers and request bodies encapsulate objects * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> post(String url, HttpEntity<?> requestEntity, Class<T> responseType, Object... uriVariables) {
return restTemplate.exchange(url, HttpMethod.POST, requestEntity, responseType, uriVariables);
}
/** * Custom request header and request body POST Request call mode * * @param url request URL * @param requestEntity Request headers and request bodies encapsulate objects * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> post(String url, HttpEntity<?> requestEntity, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.exchange(url, HttpMethod.POST, requestEntity, responseType, uriVariables);
}
// ----------------------------------PUT-------------------------------------------------------
/** * PUT Request call mode * * @param url request URL * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> put(String url, Class<T> responseType, Object... uriVariables) {
return put(url, HttpEntity.EMPTY, responseType, uriVariables);
}
/** * PUT Request call mode * * @param url request URL * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> put(String url, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody);
return put(url, requestEntity, responseType, uriVariables);
}
/** * PUT Request call mode * * @param url request URL * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> put(String url, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody);
return put(url, requestEntity, responseType, uriVariables);
}
/** * With request header PUT Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> put(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return put(url, httpHeaders, requestBody, responseType, uriVariables);
}
/** * With request header PUT Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> put(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return put(url, requestEntity, responseType, uriVariables);
}
/** * With request header PUT Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> put(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return put(url, httpHeaders, requestBody, responseType, uriVariables);
}
/** * With request header PUT Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> put(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return put(url, requestEntity, responseType, uriVariables);
}
/** * Custom request header and request body PUT Request call mode * * @param url request URL * @param requestEntity Request headers and request bodies encapsulate objects * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> put(String url, HttpEntity<?> requestEntity, Class<T> responseType, Object... uriVariables) {
return restTemplate.exchange(url, HttpMethod.PUT, requestEntity, responseType, uriVariables);
}
/** * Custom request header and request body PUT Request call mode * * @param url request URL * @param requestEntity Request headers and request bodies encapsulate objects * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> put(String url, HttpEntity<?> requestEntity, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.exchange(url, HttpMethod.PUT, requestEntity, responseType, uriVariables);
}
// ----------------------------------DELETE-------------------------------------------------------
/** * DELETE Request call mode * * @param url request URL * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, Class<T> responseType, Object... uriVariables) {
return delete(url, HttpEntity.EMPTY, responseType, uriVariables);
}
/** * DELETE Request call mode * * @param url request URL * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, Class<T> responseType, Map<String, ?> uriVariables) {
return delete(url, HttpEntity.EMPTY, responseType, uriVariables);
}
/** * DELETE Request call mode * * @param url request URL * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody);
return delete(url, requestEntity, responseType, uriVariables);
}
/** * DELETE Request call mode * * @param url request URL * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody);
return delete(url, requestEntity, responseType, uriVariables);
}
/** * With request header DELETE Request call mode * * @param url request URL * @param headers Request header parameters * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, Map<String, String> headers, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return delete(url, httpHeaders, responseType, uriVariables);
}
/** * With request header DELETE Request call mode * * @param url request URL * @param headers Request header parameters * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, HttpHeaders headers, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(headers);
return delete(url, requestEntity, responseType, uriVariables);
}
/** * With request header DELETE Request call mode * * @param url request URL * @param headers Request header parameters * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, Map<String, String> headers, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return delete(url, httpHeaders, responseType, uriVariables);
}
/** * With request header DELETE Request call mode * * @param url request URL * @param headers Request header parameters * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, HttpHeaders headers, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(headers);
return delete(url, requestEntity, responseType, uriVariables);
}
/** * With request header DELETE Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return delete(url, httpHeaders, requestBody, responseType, uriVariables);
}
/** * With request header DELETE Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return delete(url, requestEntity, responseType, uriVariables);
}
/** * With request header DELETE Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return delete(url, httpHeaders, requestBody, responseType, uriVariables);
}
/** * With request header DELETE Request call mode * * @param url request URL * @param headers Request header parameters * @param requestBody Request parameter body * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return delete(url, requestEntity, responseType, uriVariables);
}
/** * Custom request header and request body DELETE Request call mode * * @param url request URL * @param requestEntity Request headers and request bodies encapsulate objects * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, HttpEntity<?> requestEntity, Class<T> responseType, Object... uriVariables) {
return restTemplate.exchange(url, HttpMethod.DELETE, requestEntity, responseType, uriVariables);
}
/** * Custom request header and request body DELETE Request call mode * * @param url request URL * @param requestEntity Request headers and request bodies encapsulate objects * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> delete(String url, HttpEntity<?> requestEntity, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.exchange(url, HttpMethod.DELETE, requestEntity, responseType, uriVariables);
}
// ---------------------------------- Common methods -------------------------------------------------------
/** * General calling method * * @param url request URL * @param method Request method type * @param requestEntity Request headers and request bodies encapsulate objects * @param responseType Return object type * @param uriVariables URL The variables in the , Correspond to... In order * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, Class<T> responseType, Object... uriVariables) {
return restTemplate.exchange(url, method, requestEntity, responseType, uriVariables);
}
/** * General calling method * * @param url request URL * @param method Request method type * @param requestEntity Request headers and request bodies encapsulate objects * @param responseType Return object type * @param uriVariables URL The variables in the , And Map Medium key Corresponding * @return ResponseEntity Response object encapsulation class */
public static <T> ResponseEntity<T> exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.exchange(url, method, requestEntity, responseType, uriVariables);
}
/** * obtain RestTemplate Instance object , You are free to call its methods * * @return RestTemplate Instance object */
public static RestTemplate getRestTemplate() {
return restTemplate;
}
}
边栏推荐
猜你喜欢
随机推荐
隐藏用户的创建和使用
C#/VB.NET 给PDF文档添加文本/图像水印
awoo‘s Favorite Problem(优先队列)
PHP reflective XSS, reflective XSS test and repair
分享一个一年经历两次裁员的程序员的一些感触
【QT小作】封装一个简单的线程管理类
Slope compensation
2020-ViT ICLR
The second anniversary of the three winged bird: the wings are getting richer and the take-off is just around the corner
Mysql——》MyISAM存储引擎的索引
CSDN购买的课程从哪里可以进入
Unity 使用Sqlite
String type conversion BigDecimal, date type
The difference between NiO and traditional IO
What is the difference between PMP and NPDP?
Slope compensation
Separate the letters and numbers in the string so that the letters come first and the array comes last
plantuml介绍与使用
园区全光技术选型-中篇
MySQL数据库详细学习教程