在上一篇文章中Spring Cloud之Hystrix服务降级,我们通过一个注解@HystrixCommand就可以定义断路器,实现服务降级,其实定义一个断路器还可以通过对HystrixCommand的继承来实现,下面我们来看看具体的实现步骤
接着上篇的项目结构图继续实现
在hystrix项目中定义一个MyHystrixCommand ,继承HystrixCommand,由于返回的是string类型,所以在HystrixCommand的泛型中指定String类型的,重写run、getFallback方法,创建RestTemplate 实例,提供MyHystrixCommand 的构造方法,将restTemplate对象作为参数
package com.zhouym.hystrix;
import com.netflix.hystrix.HystrixCommand;
import com.netflix.hystrix.HystrixCommandGroupKey;
import org.springframework.web.client.RestTemplate;
/**
* 〈〉
*
* @author zhouym
* @create 2019/9/2
* @since 1.0.0
*/
public class MyHystrixCommand extends HystrixCommand<String> {
RestTemplate restTemplate;