31. Springboot中使用RestTemplate
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了31. Springboot中使用RestTemplate相关的知识,希望对你有一定的参考价值。
一. 前言
获取Eureka实例
public String serviceUrl() { InstanceInfo instance = discoveryClient.getNextServerFromEureka("STORES", false); return instance.getHomePageUrl(); }
步骤:
二. 导入包
pom.xml
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-hystrix</artifactId> </dependency>
三. 修改启动Application
@EnableCircuitBreaker @EnableDiscoveryClient public class HellloMain { @Bean @LoadBalanced RestTemplate restTemplate() { return new RestTemplate(); } public static void main(String[] args) { SpringApplication.run(HelloMain.class, args); } }
四. 业务使用
private int xxxx(String body) { RestTemplate restTemplate = new RestTemplate(); HttpHeaders headers = new HttpHeaders(); MediaType type = MediaType.parseMediaType("application/json"); headers.setContentType(type); HttpEntity<String> formEntity = new HttpEntity<String>(body, headers); String result = restTemplate.postForObject(getEurkaClient("hello-module"), formEntity, String.class); return 0; }
public String getEurkaClient(String end) { InstanceInfo instance = discoveryClient.getNextServerFromEureka("smarthome-phihome", false); return instance.getHomePageUrl() + end; }
这样就可以在应用程序之间互相调用
本文出自 “www.bogo.com” 博客,请务必保留此出处http://483181.blog.51cto.com/473181/1954798
以上是关于31. Springboot中使用RestTemplate的主要内容,如果未能解决你的问题,请参考以下文章
OAuth2RestOperations 使用从请求标头获取的令牌,而不是请求身份验证服务器
github 31.6K star的Springboot开源电商系统,值得关注