RestTemplate實現不同專案的RESTful呼叫
阿新 • • 發佈:2018-12-28
概述
因要實現不同專案之間的RESTful介面呼叫,後來發現RestTemplate很好用,這裡先簡單使用。
專案搭建
搭建很簡單,可以參考CXF+JAX-RS搭建RESTful風格的WebService。其實不需要這麼複雜,不過比較晚了就暫時沒寫那麼細。下面的測試也在此文章中描述的專案基礎上進行測試。
使用RestTemplate進行呼叫
先測試一個同一個專案下的呼叫情況。
import com.alibaba.druid.support.json.JSONUtils; import org.springframework.http.ResponseEntity; import org.springframework.web.client.RestTemplate; /** * @Author: Qin * @Description: * @Date: Created * @Modified By: */ public class RestTemplateTest { public static void main(String[] args){ // String url = "http://localhost:8085/ciLib/tree.json"; String url = "http://localhost:8080/itil/capabilityWs/getTest"; RestTemplate restTemplate = new RestTemplate(); ResponseEntity responseEntity = restTemplate.getForEntity(url, String.class); // System.out.print(responseEntity.toString()); // System.out.println(); System.out.print(JSONUtils.toJSONString(responseEntity.getBody())); } }
下面測試不同專案的結果,另一個專案採用的技術基本上是一樣的。程式碼如下,只是把url換成另一個專案中某個具體方法的對映而已,訪問controller的某個方法跟前端jsp頁面訪問controller一樣的,返回的資料格式為JSON。