springcloud常用注解讲解代码示例
时间: 2023-10-10 18:09:26 浏览: 104
(九)SpringCloud-Gateway(Gateway+Sentinel实现网关限流)本章代码
1. @EnableDiscoveryClient
该注解用于将当前应用注册为Eureka客户端应用,以便能够从Eureka Server中获取服务信息。
示例代码:
@SpringBootApplication
@EnableDiscoveryClient
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
2. @EnableFeignClients
该注解用于启用Feign客户端,以便能够方便地调用其他服务的API接口。
示例代码:
@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
3. @HystrixCommand
该注解用于为服务添加熔断器功能,以便能够在服务不可用时提供降级处理。
示例代码:
@Service
public class HelloService {
@Autowired
private RestTemplate restTemplate;
@HystrixCommand(fallbackMethod = "fallback")
public String hello() {
return restTemplate.getForObject("http://service-provider/hello", String.class);
}
public String fallback() {
return "fallback";
}
}
4. @EnableCircuitBreaker
该注解用于启用Hystrix断路器功能,以便能够在服务不可用时提供降级处理。
示例代码:
@SpringBootApplication
@EnableDiscoveryClient
@EnableCircuitBreaker
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
阅读全文