记录一下 Spring 如何扫描注解的 Bean 与资源

Spring 相关代码分析

本文经过对 Spring 的源代码来理解它是如何扫描 Bean 与资源的,由于本身有一个相似的需求,想把一堆的配置文件丢到 resources 下某个目录中,在程序启动的时候能加载它们。由于文件名是不必定的,因此不能直接指定文件名来加载,经过对 Spring 扫描资源的理解后,能够在本身的代码中手工扫描那些配置文件,之后有任何新的配置文件只须要扔到相应的配置目录便可。html

下面以一个最简单的 Spring Boot 项目为例,调试并观察源代码java

@SpringBootApplication
@ComponentScan(basePackages = "cc.unmi")
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

仍是直奔主题吧,不一步一步的去探寻究竟是哪一个实现类去扫描资源的,用 Google 找到的是 ClassPathScanningCandidateComponentProvider, 所以直接在这个类的敏感位置上打上断点,好比它的构造函数 阅读全文 >>spring

相关文章
相关标签/搜索