1..@SpringBootApplication:注解用于描述spring项目的启动类,由此注解描述的类为soringboot入口对象,我们可以通过这个入口老启动springboot项目
特点:

  • 1.由@springbootapplication注解描述(在springboot项目中只能有一个)
  • 2.包含一个main方法,在方法中完成spring项目的初始化

FAQ:初始化时,springboot底层会做什么?

  • 1.加载类(通过类加载器将指定位置的类读到内存->底层线程调用io从磁盘读取内存)
  • 2.对类进行分析(创建字节码对象-class类型,通过反射读取配置信息)
  • 3.对于指定配置(例如由spring特定注解描述)的对象存储其配置信息(借助BeanDefinition对象存储)
  • 4.基于Beanfinition对象中的class配置构建类的实例(Bean对象),从而进行bean对象的管理

2.@Component:注解描述的类,表示交给spring框架管理的一个对象,没有指定bean的名字,则默认为类的首字母小写
3.@AutoWired:注解描述的属性由spring框架按照一定的规则为其赋值:

  • 1.依赖查找
  • 2.依赖注入image.png

4.@Lazy:延迟创建此注解描述的类
5.@Scope
5.1@Scope注解用于定义对象作用域,默认为单例(Singleton)作用域(一个JVM内存中,名字与bean相同的只能有一个可以)
5.2@Scope("prototype"):prototype表示多例作用域,此示例与Lazy无关,默认何时需要何时创建,并且不会存储到spring的对象池中
6.@Param:以注解括号内的变量进行查询image.png


Dumb ly
1 声望0 粉丝

菜鸟