springboot可配置开启自定义starter

可配置starter编写

1 引入依赖

xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-autoconfigure</artifactId>
</dependency>

2 增加配置类

java 复制代码
@Configuration
public class NftServerStartConfiguration {

    @Bean
    @ConditionalOnProperty(prefix = "nft.server",name = "enabled", havingValue = "true")
    public void startBoot(){
        System.out.println("服务开启并启动了,欢迎使用ntfServer服务");
    }
}

3 编写注解配置

用import将第二步编写的配置类导入到注解中,让注解管理起来

java 复制代码
/**
 * nftserver注解开启
 * @author marlon
 * @create 2024-01-18 10:38
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Import(value = NftServerStartConfiguration.class)
@Documented
@Inherited
public @interface NftServer {

}

业务使用可配置starter

1 引入starter配置

xml 复制代码
<dependency>
    <groupId>cn.com.agree.adfs</groupId>
    <artifactId>nft-server-sdk-starter</artifactId>
    <version>2.6.1</version>
</dependency>

2 配置文件配置参数

yaml 复制代码
nft:
  server:
    enabled: true

3 启动类上加注解@NftServer

java 复制代码
@SpringBootApplication
@NftServer
public class AdfsDemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(AdfsDemoApplication.class);
    }
}
相关推荐
琢瑜9 小时前
问题1:Oracle Java路径干扰。问题2:环境变量加载顺序问题
java·maven
Yang-Never9 小时前
Open GL ES->以指定点为中心缩放图片纹理的完整图解
android·java·开发语言·kotlin·android studio
编程修仙9 小时前
第十一篇 Spring事务
xml·java·数据库·spring
7哥♡ۣۖᝰꫛꫀꪝۣℋ10 小时前
Spring Boot ⽇志
java·spring boot·后端
清晓粼溪10 小时前
Mybatis02:核心功能
java·mybatis
weisonx10 小时前
为什么要多写文章博客
java·c++
大佐不会说日语~10 小时前
SSE 流式输出 Markdown 实时渲染问题解决方案
java·vue.js·sse·spring ai·前端实时渲染
塔能物联运维10 小时前
设备断网时数据丢失,后来启用本地缓存+异步重传队列
java·开发语言·缓存
新手程序员大大10 小时前
springCloudGateway+Nacos注册与转发Netty+WebSocket
spring boot