Springbooy-自动装载

Posted song.yan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Springbooy-自动装载相关的知识,希望对你有一定的参考价值。

1,SpringBoot里面有内置的tomcat容器。

2,SpringBoot是基于已有的东西创建的新的东西。核心:(AutoConfiguration)自动装载,Starter,Actuator,SpringBoot CLI

3,SpringBoot本质上还是使用IOC。

4,剖析启动注解(SpringBootApplication)

从第二张图的可以看出SpringBootApplication是一个复合注解,里面有:

(1)ComponentScan注解:

  定义扫描@Controller,@Service,@Reponsitory,@Component的范围。

  在早期:<context:component-scan />使得带有上述注解的类被加载到spring容器中

(2)EnableAutoConfiguration注解:

  在以前,需要在applicationContext.xml中配置bean的信息

  在Spring3开始,他支持了JavaConfig(Java jdk5支持了注解):所谓的JavaConfig就是基于注解实现IOC容器的配置(实现Bean的管理)

  下面是配置bean托管的三种方式

  1)xml的方式    

  

  2)@Configuration注解的方式        

  

  3)@ComponentScan注解的方式(装载当前包下面使用了注解(@Controller,@Service,@Dao)的类)

   1.可以加载到同一包下加注解的类

  

  

   2.不同包下加载不到

  

  

  3.可以通过指定扫描的包解决上述问题

  @ComponentScan(basePackages = "com.example.demo")

   

   (4)@EnableAutoConfiguration

    @AutoConfigurationPackage
   @Import({AutoConfigurationImportSelector.class})
    1)@import注解
      如下图:在Demo2Main中获取容器中的bean会发现加载不到tempp包下的bean,想要加载指定的其他的bean,就可以使用import来实现

      

 

      @import 导入指定的bean

       

  (5)动态注入

  

5,RestController注解

这个注解也是一个复合注解:

 

 这也是为什么使用了RestController这个注解之后就不需要再写ResponseBody注解,Controller注解。

 

以上是关于Springbooy-自动装载的主要内容,如果未能解决你的问题,请参考以下文章

unity inspector 自动装载Commont和Prefab属性

postman 自动生成 curl 代码片段

postman 自动生成 curl 代码片段

如何设置 vscode 的代码片段,以便在自动完成后自动触发 vscode 的智能感知?

VSCode 配置 用户自定义代码片段 自定义自动代码补充

[AndroidStudio]_[初级]_[配置自动完成的代码片段]