java八股复习指南-Spring篇

spring全家桶理解

Spring框架

核心:ioc和aop

ioc:控制反转

是指把对象的创建和配置的控制权从调用方转移给spring容器,我们可以将对象交给容器管理,即bean,这样不需要自己去new对象,只需要获取bean就可以使用。

好比在家自己做菜,菜的味道全部由自己控制;去餐馆吃饭,菜的味道则是交由餐馆控制。IoC 容器就担任了餐馆的角色。

对象交由容器管理后,默认是单例的,这就解决了资源浪费的问题。

  • 解决对象耦合的问题,有利于功能的服用

使用注解@AutoFired自动注入bean对象
核心注解:

  • @Component:通用注解,可标注任意类为Bean对象,如果不知道属于哪一层,即可用该注解
  • @Controller:对应controller层
  • @Service:对应service层
  • @Repository:对应dao层,使用该注解还必须配置扫描地址

@Component@Bean的区别:

  • @Component 注解作用于类,而@Bean注解作用于方法。
  • Spring容器启动时,会自动扫描整个包,寻找带@Component注解的类,并将其实例化为Bean对象
  • 在带有@Configuration注解的配置类中,可以使用@Bean注解标记方法,这些方法会返回一个Bean对象

aop:面向切面编程

切面:复用一些辅助逻辑,这些辅助逻辑犹如一条条横线,穿插在所有的方法当中

oop是纵向的结构,那么aop则是横向的,是对oop的一种补充;在不修改原有代码基础上,让切面逻辑在所有业务逻辑中生效

SpringMVC

SpringMVC是一款web MVC框架,MVC 是模型(Model)、视图(View)、控制器(Controller)的简写,其核心思想是通过将业务逻辑、数据、显示分离来组织代码。

MVC框架:

Model:Pojo、Service、Dao

View:视图

Controller:控制器

SpringMVC执行原理

2850774-20230728190832999-904625321

SpringBoot

核心注解:

@SpringBootApplication

  1. 在SpringBoot项目中,主启动类上面有一个注解SpringBootApplication注解,它对@Configuration、@ComponentScan以及@EnableAutoConfiguration等三个注解进行了封装,@EnableAutoConfiguration注解是SpringBoot实现自动配置的核心注解
  2. 该注解通过@Import注解导入了一个@AutoConfigurationImportSelector类,该类实现了一个ImportSelector导入器接口,该接口中存在一个selectImports()方法。该方法的返回值是一个存储Spring中类全名的数组
  3. AutoConfigurationSelectors类重写了selectImports()方法,通过重写后的selectImports()方法读取META-INF下spring.factories文件下配置类的全类名
  4. 这些配置类定义的Bean根据条件注解所指定的条件决定是否导入Spring容器中
posted @ 2024-07-17 13:23  forest-pan  阅读(8)  评论(0编辑  收藏  举报