@SpringBootApplication注解相当于使用@Configuration , @EnableAutoConfiguration 和 @ComponentScan与他们的默认属性。
@EnableAutoConfiguration启用Spring Boot的自动配置机制注解。
@Configuration 允许在上下文中注册额外的bean或导入额外的配置类。
@ComponentScan在应用程序所在的包上启用@Component组件扫描。
这些功能并不是强制使用的,例如不想使用组件扫描:
package com.example.myapplication;
import org.springframework.boot.SpringApplication;
import org.springframework.context.annotation.ComponentScan
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
@Configuration
@EnableAutoConfiguration
@Import({ MyConfig.class, MyAnotherConfig.class })
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
该段代码使用了
@Import 明确导入,来替代了组件扫描。