码迷,mamicode.com
首页 > 编程语言 > 详细

SpringBoot编写自定义Starter

时间:2019-01-18 14:24:13      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:上下文   ice   启动   新建   org   mat   web   maven插件   src   

根据SpringBoot的Starter编写规则,需要编写xxxStarter依赖xxxAutoConfigurer,xxxStarter是一个空的jar,仅提供辅助性的依赖管理,引入其他类库

1.建立一个empty工程,建立一个普通maven模块xxxStarter,建立一个SpringBoot模块xxxAutoConfigurer,前者依赖后者

2.xxxAutoConfigurer:

新建:HelloService:

public class HelloService {

    private HelloProperties helloProperties;

    public void setHelloProperties(HelloProperties helloProperties) {
        this.helloProperties = helloProperties;
    }
    public HelloProperties getHelloProperties() {
        return helloProperties;
    }

    public String hello(){
        return StringFormatter.format("%s:你好,%s欢迎光临",helloProperties.getWeekend(),helloProperties.getName()).getValue();
    }
}

新疆:HelloProperties类

@ConfigurationProperties(prefix = "brx")
public class HelloProperties {

    private String weekend;

    private String name;

    public String getWeekend() {
        return weekend;
    }

    public void setWeekend(String weekend) {
        this.weekend = weekend;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

新建:将启动类修改为一个配置类,并去除pom.xml中的maven插件

@Configuration
@EnableConfigurationProperties(HelloProperties.class)//只有在web上下文才起作用
@ConditionalOnWebApplication
public class BrxautoconfigApplication {

    @Autowired
    HelloProperties helloProperties;

    @Bean
    HelloService helloService(){
        HelloService helloService =  new HelloService();
        helloService.setHelloProperties(helloProperties);
        return helloService;
    }
}

新建:META-INF/spring.factories:

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.brx.demo.brxautoconfig.BrxautoconfigApplication

3.将starter和Autocofigure项目install到本地仓库

4.新建一个普通web项目,并添加xxxStarter库,并在application.properties添加:

brx.weekend="周一"
brx.name="白gg"

技术分享图片

SpringBoot编写自定义Starter

标签:上下文   ice   启动   新建   org   mat   web   maven插件   src   

原文地址:https://www.cnblogs.com/brxHqs/p/10287338.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!