初识springboot 细节 自动配置

主程序类,入口类

@SpringBootApplication
public class helloworld {
    public static void main(String[] args)
    {
        SpringApplication.run(helloworld.class,args);
        //启动应用
        
    }
}

SpringBootApplication:标注在某个类上说明他是主配置类。spring boot就应该运行这个类的main方法来启动spring boot应用,

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration//配置类标注在某个类上表示这是一个spring boot的配置类 点进去configuration是最低层的配置文件这是spring标注的注解配置类也是容器中的组件
@EnableAutoConfiguration//自动开启配置功能,以前需要配置的东西spring boot帮我们配置了,加上这个注解就可以自动配置。这样自动配置的功能就会生效,原理:
点进去看到
@AutoConfigurationPackage//自动配置包再点进去:  //将主配置类所在包以及下面所有子包的所有组件都扫描一遍,
@Import({Registrar.class})//这个import就是spring的底层注解这个类来决定导入哪个组件。点金这个类可以看到metadata,寻找包名
@Import({EnableAutoConfigurationImportSelector.class})
public @interface EnableAutoConfiguration

@ComponentScan(
    excludeFilters = {@Filter(
    type = FilterType.CUSTOM,
    classes = {TypeExcludeFilter.class}
), @Filter(
    type = FilterType.CUSTOM,
    classes = {AutoConfigurationExcludeFilter.class}
)}
)
public @interface SpringBootApplication 
发布了9 篇原创文章 · 获赞 2 · 访问量 2066

猜你喜欢

转载自blog.csdn.net/whutwwg/article/details/105235330