@SpringBootApplication là meta-annotation gộp 3 annotation hay dùng nhất:
| Annotation | Tác dụng |
|---|---|
@Configuration | Class là nguồn bean definition |
@EnableAutoConfiguration | Bật auto-configuration |
@ComponentScan | Scan component từ package hiện tại trở xuống |
Dùng: đặt trên class main (chạy SpringApplication.run(App.class, args)) ở root package để @ComponentScan quét hết sub-package — đặt sai package → bean không được scan.
Tuỳ chỉnh: loại auto-config cụ thể bằng @SpringBootApplication(exclude = DataSourceAutoConfiguration.class); đổi phạm vi scan bằng scanBasePackages.