RestTemplate有哪些使用方式?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!

為五峰等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及五峰網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為做網(wǎng)站、網(wǎng)站建設(shè)、五峰網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
準(zhǔn)備
服務(wù)端我是用的是一個(gè)普通的API
@RestController
public class ServerController {
@GetMapping("/msg")
public String msg(){
return "this is product' msg";
}
}第一種方式
直接使用restTemplate,url寫(xiě)死
@Slf4j
@RestController
public class ClientController {
@GetMapping("/getProductMsg")
public String getProductMsg(){
// 1、第一種方式(直接使用restTemplate,url寫(xiě)死)
RestTemplate restTemplate = new RestTemplate();
String response = restTemplate.getForObject("http://localhost:9082/msg",String.class);
log.info("response={}",response);
return response;
}
}第二種方式(利用loadBalancerClient通過(guò)應(yīng)用名獲取url,然后再使用restTemplate)
@Slf4j
@RestController
public class ClientController {
@Autowired
private LoadBalancerClient loadBalancerClient;
@GetMapping("/getProductMsg")
public String getProductMsg(){
//2、第二種方式(利用loadBalancerClient通過(guò)應(yīng)用名獲取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里使用應(yīng)用名字)
@Component
public class RestTemplateConfig {
@Bean
@LoadBalanced
public RestTemplate restTemplate(){
return new RestTemplate();
}
}@Slf4j
@RestController
public class ClientController {
@Autowired
private RestTemplate restTemplate;
@GetMapping("/getProductMsg")
public String getProductMsg(){
//3、第三種方式(利用@LoadBalanced,可再restTemplate里使用應(yīng)用名字)
String response = restTemplate.getForObject("http://PRODUCT/msg",String.class);
log.info("response={}",response);
return response;
}
}感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)RestTemplate有哪些使用方式大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
分享標(biāo)題:RestTemplate有哪些使用方式
當(dāng)前網(wǎng)址:http://www.chinadenli.net/article6/igpdog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開(kāi)發(fā)、虛擬主機(jī)、動(dòng)態(tài)網(wǎng)站、Google、ChatGPT、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)