天天看點

Http調用-靜态封裝類(RestTemplate)

項目中封裝了個restTemplate的靜态調用類,分享下,希望能幫到需要的朋友。

以前用httpclient用的比較多,後來開始用restTemplate,查了兩者的差別,大部分無非就是:

(1)restTemplate是包含在spring包中的,使用起來更加友善一些,調用也簡潔一些;

(2)restTemplate的低層支援多種調用,比如:httpclient、HttpURLConnection等吧;

​ 個人認為兩者都是為了發送http請求,本質上差別不大,無非就是restTemplate又做了一層封裝,使用起來更加友善,代碼更加簡潔而已。。

完整代碼:

說明:

(1)入參為json格式,調用時候,需要把對象或者數組轉換成json格式;MediaType是:application/json; charset=UTF-8

(2)3個靜态方法,postInvoke和getInvoke,根據傳參調用invoke;

(3)post請求使用的是:rst.postForEntity(url, httpEntity, String.class);

(4)get請求使用是:responseEntity = rst.exchange(url, HttpMethod.GET, httpEntity, String.class);

(5)可以結合上節提到的@PostConstruct标簽,實作靜态方法調用service動态方法,将調用入參、傳回參數、響應時間等入庫。

(1)map轉json,如下圖;

Http調用-靜态封裝類(RestTemplate)

(2)調用前,header中是:application/json; charset=UTF-8,body中是:{"des":"shuaige","name":"laowang"},如下圖:

Http調用-靜态封裝類(RestTemplate)

更多資訊請關注公衆号:「軟體老王」,關注不迷路,軟體老王和他的IT朋友們,分享一些他們的技術見解和生活故事。

更多資訊請關注公衆号:「軟體老王」,關注不迷路,IT技術與相關幹貨分享,回複關鍵字擷取對應幹貨,本文版權歸作者軟體老王所有,轉載需注明作者、超連結,否則保留追究法律責任的權利。

Http調用-靜态封裝類(RestTemplate)

繼續閱讀