乐趣区

自定义starter

自定义 starter 的命名规则

SpringBoot 提供的 starter 以 `spring-boot-starter-xxx` 的方式命名的。官方建议自定义的 starter 使用 `xxx-spring-boot-starter` 命名规则。以区分 SpringBoot 生态提供的 starter

整个过程分为两部分:

– 自定义 starter

– 使用 starter

首先,先完成自定义 starter

(1)新建 maven  jar 工程,工程名为 zdy-spring-boot-starter,导入依赖:

xml

<dependencies>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-autoconfigure</artifactId>

<version>2.2.2.RELEASE</version>

</dependency>

</dependencies>

(2)编写 javaBean

java

@EnableConfigurationProperties(SimpleBean.class)

@ConfigurationProperties(prefix = “simplebean”)

public class SimpleBean {

private int id;

private String name;

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

@Override

public String toString() {

return “SimpleBean{” +

“id=” + id +

“, name='” + name + ‘\” +

‘}’;

}

}

(3)编写配置类 MyAutoConfiguration

java

@Configuration

@ConditionalOnClass //@ConditionalOnClass:当类路径 classpath 下有指定的类的情况下进行自动配置

public class MyAutoConfiguration {

static {

System.out.println(“MyAutoConfiguration init….”);

}

@Bean

public SimpleBean simpleBean(){

return new SimpleBean();

}

}

(4)resources 下创建 /META-INF/spring.factories

注意:META-INF 是自己手动创建的目录,spring.factories 也是手动创建的文件, 在该文件中配置自己的自动配置类

<img src=”./images/image-20200111123116471.png” alt=”image-20200111123116471″ />

factories

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\

com.lagou.config.MyAutoConfiguration

刚学了拉勾教育的《Java 工程师高薪训练营》,看到刚学到的点就回答了。希望拉勾能给我推到想去的公司,目标:字节!!

退出移动版