国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

詳解RestTemplate的三種使用方式

2024-07-14 08:42:39
字體:
來源:轉載
供稿:網友

什么是RestTemplate

傳統情況下在java代碼里訪問restful服務,一般使用Apache的HttpClient。不過此種方法使用起來太過繁瑣。spring提供了一種簡單便捷的模板類來進行操作,這就是RestTemplate。

準備

服務端我是用的是一個普通的API

@RestControllerpublic class ServerController { @GetMapping("/msg") public String msg(){  return "this is product' msg"; }}

第一種方式

直接使用restTemplate,url寫死

@Slf4j@RestControllerpublic class ClientController { @GetMapping("/getProductMsg") public String getProductMsg(){  // 1、第一種方式(直接使用restTemplate,url寫死)  RestTemplate restTemplate = new RestTemplate();  String response = restTemplate.getForObject("http://localhost:9082/msg",String.class);  log.info("response={}",response);  return response; }}

第二種方式

第二種方式(利用loadBalancerClient通過應用名獲取url,然后再使用restTemplate)

@Slf4j@RestControllerpublic class ClientController { @Autowired private LoadBalancerClient loadBalancerClient; @GetMapping("/getProductMsg") public String getProductMsg(){  //2、第二種方式(利用loadBalancerClient通過應用名獲取url,然后再使用restTemplate)  ServiceInstance serviceInstance = loadBalancerClient.choose("PRODUCT");  String url = String.format("http://%s:%s",serviceInstance.getHost(),serviceInstance.getPort()) + "/msg";  RestTemplate restTemplate = new RestTemplate();  String response = restTemplate.getForObject(url,String.class);  log.info("response={}",response);  return response; }}

第三種方式

第三種方式(利用@LoadBalanced,可再restTemplate里使用應用名字)

@Componentpublic class RestTemplateConfig { @Bean @LoadBalanced public RestTemplate restTemplate(){  return new RestTemplate(); }}@Slf4j@RestControllerpublic class ClientController { @Autowired private RestTemplate restTemplate; @GetMapping("/getProductMsg") public String getProductMsg(){  //3、第三種方式(利用@LoadBalanced,可再restTemplate里使用應用名字)  String response = restTemplate.getForObject("http://PRODUCT/msg",String.class);  log.info("response={}",response);  return response; }}

github項目

Cloud2Sell 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 陆河县| 九龙县| 连江县| 侯马市| 武山县| 泸西县| 上虞市| 自治县| 灯塔市| 贵溪市| 尉犁县| 嘉兴市| 龙口市| 白沙| 长岭县| 梁平县| 女性| 桃源县| 益阳市| 衡水市| 寻甸| 沅江市| 分宜县| 重庆市| 西吉县| 和政县| 七台河市| 贡嘎县| 城固县| 祁阳县| 辉县市| 宜良县| 徐汇区| 新津县| 靖江市| 卢龙县| 道孚县| 丹凤县| 靖西县| 浪卡子县| 新竹县|