在febs-commn的annotation包下定义了一些自定义注解,挑几个比较重要的讲解下它们的作用。 1. `@EnableFebsAuthExceptionHandler`:开启资源服务器异常拦截,使用该注解标注Spring Boot启动类后,就可以在资源服务器配置类里注入下面两个对象并配置: ```java @Autowired private FebsAccessDeniedHandler accessDeniedHandler; @Autowired private FebsAuthExceptionEntryPoint exceptionEntryPoint; ...... @Override public void configure(ResourceServerSecurityConfigurer resources) { resources.authenticationEntryPoint(exceptionEntryPoint) .accessDeniedHandler(accessDeniedHandler); } ``` 2. `@EnableFebsLettuceRedis`:使用该注解标注Spring Boot启动类后,就可以在当前系统中使用基于Lettuce的Redis服务了(采用默认配置,您也可以在application.yml自己指定Redis配置): ```java @Autowired private RedisService redisService; ``` `RedisService `包含了许多常用的Redis操作方法: ![281.png](https://s2.ax1x.com/2019/09/07/n1IYfx.png) 因为Lettuce需要`commons-pool2`依赖,所以您还需在当前微服务系统pom里引入如下依赖: ```xml <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> </dependency> ``` 3. `@EnableFebsOauth2FeignClient`,使用该注解标注Spring Boot启动类后,就可以使用Feign访问受资源服务器保护的资源了; 4. `@EnableFebsServerProtect`,使用该注解标注Spring Boot启动类后,客户端请求将无法直接访问微服务,只能通过微服务网关访问; 5. `@FebsCloudApplication`,该注解组合了`@EnableFebsAuthExceptionHandler`、`@EnableFebsOauth2FeignClient`和`@EnableFebsServerProtect`的功能; 6. `@Log`,AOP记录操作日志,实现教程可以参考:[Spring Boot AOP记录用户操作日志](https://mrbird.cc/Spring-Boot-AOP%20log.html)