中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

RestTemplate?GET請求怎么用

發布時間:2022-03-17 10:08:49 來源:億速云 閱讀:184 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關RestTemplate GET請求怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

一、 getForObject() 方法

1.1.以String的方式接受請求結果數據

在Spring Boot環境下寫一個單元測試用例,以String類型接收響應結果信息

@SpringBootTestclass ResttemplateWithSpringApplicationTests {   @Resource   private RestTemplate restTemplate;   @Test   void testSimple()  {      String url = "http://jsonplaceholder.typicode.com/posts/1";      String str = restTemplate.getForObject(url, String.class);      System.out.println(str);   }}

getForObject第二個參數為返回值的類型,String.class以字符串的形式接受getForObject響應結果,

RestTemplate?GET請求怎么用

1.2.以POJO對象的方式接受結果數據

在Spring Boot環境下寫一個單元測試用例,以java POJO對象接收響應結果信息

@Testpublic void testPoJO() {   String url = "http://jsonplaceholder.typicode.com/posts/1";   PostDTO postDTO = restTemplate.getForObject(url, PostDTO.class);   System.out.println(postDTO.toString());}

輸出打印結果如下:

RestTemplate?GET請求怎么用

POJO的定義如下,根據JSON String的數據格式定義。

@Datapublic class PostDTO {    private int userId;    private int id;    private String title;    private String body;}

1.3.以數組的方式接收請求結果

訪問http://jsonplaceholder.typicode.com/posts 可以獲得JSON數組方式的請求結果

RestTemplate?GET請求怎么用

下一步就是我們該如何接收,使用方法也很簡單。在Spring Boot環境下寫一個單元測試用例,以數組的方式接收請求結果。

@Testpublic void testArrays() {   String url = "http://jsonplaceholder.typicode.com/posts";   PostDTO[] postDTOs = restTemplate.getForObject(url, PostDTO[].class);   System.out.println("數組長度:" + postDTOs.length);}

請求的結果被以數組的方式正確接收,輸出如下:

數組長度:100

1.4.使用占位符號傳參的幾種方式

以下的幾個請求都是在訪問"http://jsonplaceholder.typicode.com/posts/1",只是使用了占位符語法,這樣在業務使用上更加靈活。

使用占位符的形式傳遞參數:

String url = "http://jsonplaceholder.typicode.com/{1}/{2}";PostDTO postDTO = restTemplate.getForObject(url, PostDTO.class, "posts", 1);

另一種使用占位符的形式:

String url = "http://jsonplaceholder.typicode.com/{type}/{id}";String type = "posts";int id = 1;PostDTO postDTO = restTemplate.getForObject(url, PostDTO.class, type, id);

我們也可以使用 map 裝載參數:

String url = "http://jsonplaceholder.typicode.com/{type}/{id}";Map<String,Object> map = new HashMap<>();map.put("type", "posts");map.put("id", 1);PostDTO  postDTO = restTemplate.getForObject(url, PostDTO.class, map);

二、getForEntity()方法

上面的所有的getForObject請求傳參方法,getForEntity都可以使用,使用方法上也幾乎是一致的,只是在返回結果接收的時候略有差別。使用ResponseEntity<T> responseEntity來接收響應結果。用responseEntity.getBody()獲取響應體。響應體內容同getForObject方法返回結果一致。剩下的這些響應信息就是getForEntity比getForObject多出來的內容。

HttpStatus statusCode = responseEntity.getStatusCode();獲取整體的響應狀態信息int statusCodeValue = responseEntity.getStatusCodeValue(); 獲取響應碼值HttpHeaders headers = responseEntity.getHeaders();獲取響應頭等

@Testpublic void testEntityPoJo() {   String url = "http://jsonplaceholder.typicode.com/posts/5";   ResponseEntity<PostDTO> responseEntity               = restTemplate.getForEntity(url, PostDTO.class);   PostDTO postDTO = responseEntity.getBody(); // 獲取響應體   System.out.println("HTTP 響應body:" + postDTO.toString());   //以下是getForEntity比getForObject多出來的內容   HttpStatus statusCode = responseEntity.getStatusCode(); // 獲取響應碼   int statusCodeValue = responseEntity.getStatusCodeValue(); // 獲取響應碼值   HttpHeaders headers = responseEntity.getHeaders(); // 獲取響應頭   System.out.println("HTTP 響應狀態:" + statusCode);   System.out.println("HTTP 響應狀態碼:" + statusCodeValue);   System.out.println("HTTP Headers信息:" + headers);}

輸出打印結果

RestTemplate?GET請求怎么用

感謝各位的閱讀!關于“RestTemplate GET請求怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿克| 内丘县| 云霄县| 思茅市| 望城县| 兴安县| 沂源县| 阜城县| 改则县| 商河县| 嘉黎县| 桐城市| 哈巴河县| 康保县| 汕尾市| 泽州县| 年辖:市辖区| 榆树市| 当雄县| 新和县| 泉州市| 上思县| 达日县| 台北市| 陈巴尔虎旗| 祁东县| 夏邑县| 莱西市| 福鼎市| 东宁县| 阳春市| 厦门市| 大荔县| 鄂州市| 曲阳县| 黎平县| 枝江市| 江都市| 山阳县| 张家港市| 江孜县|