SpringBoot自定义Starter及使用

 更新时间:2023年07月25日 10:53:03   作者:「已注销」  
这篇文章主要介绍了SpringBoot自定义Starter及使用,Starter是Spring Boot中的一个非常重要的概念,Starter相当于模块,它能将模块所需的依赖整合起来并对模块内的Bean根据环境进行自动配置,需要的朋友可以参考下

1 创建一个自定义Starter项目

image20220515160038568

CustomConfig

@Configuration
@EnableConfigurationProperties(value = CustomProperties.class) // 使配置类生效
@ConditionalOnProperty(prefix = "mmw.config", name = "enable", havingValue = "true") // 自动装配条件
public class CustomConfig {
    @Resource
    private CustomProperties customProperties;
    @Bean
    public ConfigService defaultCustomConfig() {
        return new ConfigService(customProperties.getAge(), customProperties.getName(), customProperties.getInfo());
    }
}

CustomProperties

@ConfigurationProperties(prefix = "mmw.config")
public class CustomProperties {
    private Integer age;
    private String name;
    private String info;
    // getter/setter
}

ConfigService

public class ConfigService {
    private Integer age;
    private String name;
    private String info;
    public ConfigService(Integer age, String name, String info) {
        this.age = age;
        this.name = name;
        this.info = info;
    }
    public String showConfig() {
        return "ConfigService{" +
                "age=" + age +
                ", name='" + name + '\'' +
                ", info='" + info + '\'' +
                '}';
    }
}

META-INF/spring.factories

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.mmw.demo.config.CustomConfig

2 创建一个测试springBoot项目

image20220515161006770

application.yml

mmw:
    config:
        enable: true
        age: 26
        name: 'my custom starter'
        info: 'custom web info...'
server:
    port: 8081
spring:
    application:
        name: customStarterTestDemo

TestController

@RestController
public class TestController {
    @Resource
    private ConfigService configService;
    @GetMapping("/test")
    public String test() {
        return configService.showConfig();
    }
}

3 测试自动装配

image20220515161241855

到此这篇关于SpringBoot自定义Starter及使用的文章就介绍到这了,更多相关自定义Starter内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MyBatis实现简单的数据表分月存储

    MyBatis实现简单的数据表分月存储

    本文主要介绍了MyBatis实现简单的数据表分月存储,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • IDEA中Git的配置及其使用过程

    IDEA中Git的配置及其使用过程

    本文介绍了如何在IntelliJ IDEA中配置和使用Git,包括配置Git路径、克隆项目、更新代码、提交和推送代码、合并分支、管理分支以及将本地项目推送到GitHub
    2025-12-12
  • JAVA多线程CountDownLatch使用详解

    JAVA多线程CountDownLatch使用详解

    这篇文章主要为大家详细介绍了JAVA多线程CountDownLatch的使用,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • Spring配置文件的拆分和整合过程分析

    Spring配置文件的拆分和整合过程分析

    在实际应用里,随着应用规模的增加,系统中 Bean 数量也大量增加,导致配置文件非常庞大。为了避免这种情况的产生,提高配置文件的可读性与可维护性,可以将Spring 配置文件分解成多个配置文件,感兴趣的朋友跟随小编一起看看吧
    2022-10-10
  • java单向链表的实现实例

    java单向链表的实现实例

    java单向链表的实现实例。需要的朋友可以过来参考下,希望对大家有所帮助
    2013-10-10
  • 关于SpringMVC中控制器如何处理文件上传的问题

    关于SpringMVC中控制器如何处理文件上传的问题

    这篇文章主要介绍了关于SpringMVC中控制器如何处理文件上传的问题,在 Web 应用程序中,文件上传是一个常见的需求,例如用户上传头像、上传文档等,本文将介绍 Spring MVC 中的控制器如何处理文件上传,并提供示例代码,需要的朋友可以参考下
    2023-07-07
  • springboot整合druid连接池的步骤

    springboot整合druid连接池的步骤

    这篇文章主要介绍了springboot整合druid连接池的步骤,帮助大家更好的理解和学习springboot框架,感兴趣的朋友可以了解下
    2020-11-11
  • SpringBoot整合Swagger教程详解

    SpringBoot整合Swagger教程详解

    SpringBoot是一个基于Spring框架的轻量级开源框架,它的出现极大地简化了Spring应用的搭建和开发,本文将介绍如何在SpringBoot中使用Swagger来实现接口文档的自动生成,感兴趣的同学可以参考一下
    2023-04-04
  • Java远程调试保姆级教程(附详细图文)

    Java远程调试保姆级教程(附详细图文)

    这篇文章主要介绍了Java远程调试的相关资料,Java远程调试是一种在本地计算机上调试部署在远程服务器上的Java应用程序的能力,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-07-07
  • Java 使用Docker时经常遇到的五个问题

    Java 使用Docker时经常遇到的五个问题

    这篇文章主要介绍了Java 使用Docker时经常遇到的五个问题的相关资料,需要的朋友可以参考下
    2016-10-10

最新评论