項目中封裝了個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,如下圖;
(2)調用前,header中是:application/json; charset=UTF-8,body中是:{"des":"shuaige","name":"laowang"},如下圖:
更多資訊請關注公衆号:「軟體老王」,關注不迷路,軟體老王和他的IT朋友們,分享一些他們的技術見解和生活故事。
更多資訊請關注公衆号:「軟體老王」,關注不迷路,IT技術與相關幹貨分享,回複關鍵字擷取對應幹貨,本文版權歸作者軟體老王所有,轉載需注明作者、超連結,否則保留追究法律責任的權利。