> Java > java지도 시간 > 본문

RestTemplate의 세 가지 사용법 소개(코드)

不言
풀어 주다: 2018-10-25 15:47:28
앞으로
3660명이 탐색했습니다.

이 글은 RestTemplate을 사용하는 세 가지 방법에 대한 소개(코드)를 제공합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

준비

서버측에서 공통 API를 사용하고 있습니다

@RestController
public class ServerController {

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

}
로그인 후 복사

첫 번째 방법

직접 RestTemplate을 사용합니다 , 죽음에 대한 URL 쓰기

@Slf4j
@RestController
public 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
@RestController
public 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에서 애플리케이션 이름을 사용할 수 있음)
@Component
public class RestTemplateConfig {

    @Bean
    @LoadBalanced
    public RestTemplate restTemplate(){
        return new RestTemplate();
    }

}
로그인 후 복사
rrree

위 내용은 RestTemplate의 세 가지 사용법 소개(코드)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:segmentfault.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!