源码解析
只是给默认的EnableFeignClients 增加了一个默认值。
@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@EnableFeignClientspublic @interface EnablePigxFeignClients {String[] value() default {};// 指定默认的扫描范围String[] basePackages() default {"com.pig4cloud.pigx"};Class<?>[] basePackageClasses() default {};Class<?>[] defaultConfiguration() default {};Class<?>[] clients() default {};}
以UPMS为例分析封装的好处

- 如果使用原生的EnableFeignClients 默认的扫描范围是 com.pig4cloud.pig.admin 包的所有FeignClient。
- 而由于微服务拆分所有的feignClient 都在 com.pig4cloud.pig.模块.api包里面,这样默认情况会扫描不到
- 除非明确指定扫描范围 @EnableFeignClients(“com.pig4cloud.pig.模块.api”)
- 使用了@EnablePigFeignClients 默认扫描 com.pig4cloud.pigx下边的feignClient 更为简洁
@EnableFeignClients
@EnableFeignClients@SpringCloudApplicationpublic class PigAdminApplication {}
@EnablePigFeignClients
@EnablePigFeignClients@SpringCloudApplicationpublic class PigAdminApplication {public static void main(String[] args) {SpringApplication.run(PigAdminApplication.class, args);}}

