自定义 springboot starter

  • 创建自定义的service处理逻辑类(不能加载到spring ioc中去)
    public class UserService {
        @Autowired
        private HelloFeignService helloFeignService;
    
        @Autowired
        private RestTemplateService restTemplateService;
    
        public String getNew(String id) {
    
            String hello = helloFeignService.hello(id);
    
            return "getNew " + hello;
        }
    
        public String getNewex(String id) {
            return restTemplateService.findone(id);
        }
    }
  • 自定义配置类
    
    @ConfigurationProperties(prefix = "demo")
    public class MyConfigProperties {
        private String name;
    
        private int age;
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public int getAge() {
            return age;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
    }
  • autoConfig配置类
    @Configuration
    @EnableConfigurationProperties(MyConfigProperties.class)
    @ConditionalOnProperty(prefix = "demo", name = "is-open", havingValue = "true")
    public class AutoConfigStarter {
        @Autowired
        MyConfigProperties myConfigProperties;
    
        @Bean
        public MyService myService() {
            return new MyService(myConfigProperties.getName(), myConfigProperties.getAge());
        }
    }
     
  •  最后加上autoConfig配置          在目录META-INF下面创建spring.factories
    org.springframework.boot.autoconfigure.EnableAutoConfiguration=home.spring.cloud.service.AutoConfigStarter

猜你喜欢

转载自blog.csdn.net/ma_ru_long/article/details/106813424