SpringBoot学习笔记---自动装配续1之模块装配

本文介绍了SpringBoot中模块装配的概念,包括@Enable注解的两种实现方式:基于注解驱动和基于接口编程。通过示例详细解释了如何自定义@Enable注解实现Bean的自动装配,并展示了编程方式下利用Selector进行更灵活的配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上篇文章我们将了模式注解的装配,感兴趣的同学可以看下https://blog.youkuaiyun.com/mikezzmeric/article/details/86746320,接下来我们讲讲其他装配方式,首先看一看@Enable的模块装配。

什么是模块装配:

具备相同领域的功能组件集合(组件指前面一个一个的Component),组合形成一个独立的单元。在我们写SpringBoot应用的时候,我们经常会看到和用到@EnableWebMvcConfiguration或者@EnableScheduling这样的注解,这些注解使用后我们的应用就可以使用MVC的一些功能以及定时任务调度的一些功能了。

模块装配一共有两种实现方式:注解方式和编程方式

那么@EnableXXX是怎么做到这么厉害的功能呢?我们用手动实现的方式来一步一步解析。

@Enable 基于注解驱动方式

首先我们自定义一个@EnableXXX的注解,代码如下:

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@Documented
@Import(HelloWorldConfiguration.class)
public @interface EnableHelloWorld {
}

这里我们自定义了一个叫做EnableHelloWorld的注解,它的主要作用是,当这个注解被引用的时候,会自动的去装配一个叫做HelloWorld的Bean,那么是怎么实现的呢?我们可以看到注解上面有一个@Import(HelloWorldConfiguration.class),@Import类似于Sp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值