SpringBoot 是什么(了解)
SpringBoot 的优点(必会)
运行 SpringBoot 项目的方式(必会)
SpringBoot 的启动器 starter(必会)
starter 执行原理?
SpringBoot 中常用的启动器
SpringBoot 运行原理剖析(必会)
SpringApplication 类作用及 run()方法作用
当前启动类@SpringBootApplication 详细剖析
第一类: JDK 原生注解 4 个
第二类: @SpringBootConfiguration
第三类: @ComponentScan, 包扫描功能.
第四类: @EnableAutoConfiguration
那么 SpringBoot 是如何完成自动配置的呢?
A. SpringBoot 自动配置的注解是 @EnableAutoConfiguration. B. 我们用的时候是在启动类上加@SpringBootApplication,这个注解是复合注解,内部包
含 @EnableAutoConfiguration
C. @EnableAutoConfiguration 内部有一个@Import, 这个注解才是完成自动配置的关
键. D. @Import 导入一个类(AutoConfigurationImportSelector),这个类内部提供了一个方
法(selectImports). 这个方法会扫描导入的所有 jar 包下的 spring.factories 文件. 解析文
件中自动配置类 key=value, 将列表中的类创建,并放到 Spring 容器中.
SpringBoot 热部署(了解)
SpringBoot 中的配置文件(必会)
有哪些配置文件?
上面两种配置文件有什么区别?
读取配置文件的方式?
SpringBoot 支持哪些日志框架(了解)
SpringBoot 常用注解(必会)
- @SpringBootApplication: 它 封 装 了 核 心 的 @SpringBootConfiguration
- +@EnableAutoConfiguration +@ComponentScan 这三个类,大大节省了程序员配
- 置时间,这就是 SpringBoot 的核心设计思想. @EnableScheduling 是通过@Import 将 Spring 调度框架相关的 bean 定义都加载到
- IoC 容器
- @MapperScan:spring-boot支持mybatis组件的一个注解,通过此注解指定mybatis
- 接口类的路径,即可完成对 mybatis 接口的扫描
- @RestController 是 @Controller 和 @ResponseBody 的 结 合 , 一 个 类 被 加 上
- @RestController 注解,数据接口中就不再需要添加@ResponseBody,更加简洁。
- @RequestMapping,我们都需要明确请求的路径. @GetMappping,@PostMapping, @PutMapping, @DeleteMapping 结 合
- @RequestMapping 使用, 是 Rest 风格的, 指定更明确的子路径. @PathVariable:路径变量注解,用{}来定义 url 部分的变量名. @Service 这个注解用来标记业务层的组件,我们会将业务逻辑处理的类都会加上这个
- 注解交给 spring 容器。事务的切面也会配置在这一层。当让 这个注解不是一定要用。
- 有个泛指组件的注解,当我们不能确定具体作用的时候 可以用泛指组件的注解托付给
- spring 容器
- @Component 和 spring 的注解功能一样, 注入到 IOC 容器中. @ControllerAdvice 和 @ExceptionHandler 配合完成统一异常拦截处理. 备注: 面试的时候记住 6.7 个即可~