1.注解的使用 2.注解处理类定义
1.注解的使用api
@RequestMapping("/test-sentinel-api-3") @SentinelResource( value = "test-sentinel-api-3", blockHandler = "blockHandlerFunc", fallback = "fallbackFunc", blockHandlerClass = MyBlockHandlerClass.class ) public String testSentinelApi3(@RequestParam String a){ if (StringUtils.isEmpty(a)){ throw new IllegalArgumentException("参数a不能为空"); } return "a: "+a; }
2.注解处理类定义(方法必须得是 static)app
@Slf4j public class MyBlockHandlerClass { // 处理限流 public static String blockHandlerFunc(String a, BlockException e){ log.warn("限流了",e); return ""; } // 处理降级 public static String fallbackFunc(String a){ log.warn("降级了"); return ""; } }