在 Spring Boot
开发过程中,我们经常会看到使用 @EnableXXX
来激活我们某一个功能性的模块,通过类注解激活后我们就能使用所激活的配置给我们带来的功能。
今天我们就来探究一下这个 @EnableXXX
给我们做了哪些工作,或者我们应该怎么通过自定义的方式开发我们自己的功能模块。
演示环境
- IntelliJ IDEA 2020.2.1 (Community Edition)
- Maven 3.5.4
- Spring Boot 2.1.1.RELEASE
走进源码
在 SpringBoot
中 @Enable
的实现方式用两种。
一种是注解驱动的方式,我们以 @EnableWebMvc
为例进行探究;
另外一种是接口编程的方式,我们以 @EnableCaching
为例进行探究。