複習一下下
上篇文章,我們學習了HEAD請求的相關方法的使用方法,以及具體參數的不同,當然還有一些代碼示例、使用場景等等,你是否還有些印象呢?
RestTemplate今日知識
今天我們來學習POST請求的使用方法,來共同學習一下吧。
請求方法參數分析
POST請求
共有參數介紹:
url:通路連結Url,不過多解釋。
request:用于傳輸要新增的資源對象,比如一個使用者User對象。
responseType:傳回響應的參數類型,比如,傳回的參數是個List,那麼這個參數就應該傳List.class。
uriVariables:url關聯的一些參數
postForLocation
1.
public URI postForLocation(String url, Object request, Object... uriVariables)
此方法需要傳輸url、請求對象、參數值三個參數,直接上代碼示例:
User user = new User(1, 'username', 22);
URI uri = restTemplate.postForLocation(url, user, "first param","two param");
2.
public URI postForLocation(String url, Object request, Map<String, ?> uriVariables)
此方法需要傳輸url、請求對象、Map參數值三個參數,直接上代碼示例:
Map<String,String> map = new HashMap<>;
map.put("Frist","first param");
map.put("Two","two param");
User user = new User(1, 'username', 22);
URI uri = restTemplate.postForLocation(url, user, map);
3.
public URI postForLocation(URI url, Object request)
此方法需要傳輸url和請求對象即可。
postForObject
public <T> T postForObject(String url, Object request, Class<T> responseType, Object... uriVariables)
此方法需要傳輸url、請求對象、傳回參數類型class、參數值四個參數,直接上代碼示例:
User user = new User(1, 'username', 22);
List list = restTemplate.postForObject(url, user, List.class, "first param","two param");
public <T> T postForObject(String url, Object request, Class<T> responseType, Map<String, ?> uriVariables)
Map<String,String> map = new HashMap<>;
map.put("Frist","first param");
map.put("Two","two param");
User user = new User(1, 'username', 22);
List list = restTemplate.postForObject(url, user, List.class, map);
public <T> T postForObject(URI url, Object request, Class<T> responseType)
此方法需要傳輸url、請求對象、傳回參數類型class、參數值三個參數
getForEntity
getForEntiy,除了傳回的參數的不同之外,沒有什麼的差別,不做過多的解釋,給個代碼示例自己學習吧。
public <T> ResponseEntity<T> postForEntity(String url, Object request, Class<T> responseType, Object... uriVariables)
User user = new User(1, 'username', 22);
ResponseEntity<List> entity = restTemplate.postForEntity(url, user, List.class,"first param","two param");
System.out.println(entity.getBody());
public <T> ResponseEntity<T> postForEntity(String url, Object request, Class<T> responseType, Map<String, ?> uriVariables)
Map<String,String> map = new HashMap<>;
map.put("Frist","first param");
map.put("Two","two param");
User user = new User(1, 'username', 22);
ResponseEntity<List> entity = restTemplate.postForEntity(url, user, List.class, map);
System.out.println(entity.getBody());
public <T> ResponseEntity<T> postForEntity(URI url, Object request, Class<T> responseType)
這個就不用說了吧,哈哈哈哈。
使用場景
POST請求的使用場景太多了,在這就不贅述了。
小結
今天我們又學習了POST請求相關方法的使用方式,你是否有所收獲呢?