使用SpringBoot时的疑问及其解答

1. Tomcat是怎么来的?

  在SpringBoot里面内嵌了Tomcat,即spring-boot-starter-web  -> spring-boot-starter-tomcat,导入了Tomcat

2. SpringApplication.run是怎么启动的?

  1. 初始化工作:准备环境,打印baner,创建容器
  2. 加载项目代码完成自动配置
  3. 打包项目到Tomcat
  4. 启动Tomcat

3. web.xml,SpringMvc等其它配置去哪儿了?

  自动配置

4. spring-boot-starter-parent有什么用?

  是SpringBoot的父工程,管理了很多的基础依赖,如果我们要用里面的依赖,直接导入,不需要再写版本号。

5. spring-boot-starter-web有什么用?

  用来集成web(SpringMvc),把web层需要的jar包都给你引进来了,包括:SpringMvc相关的包,日志相关包,json相关包,自动配置包,Tomcat包等等。

6. @RestController的作用

  相当于@Controller + @ResponseBody

7. @EnableAutoConfiguration的作用

  开启自动配置:通过一个导入选择器 AutoConfigurationImportSelector 会负责 spring.factories 文件中加载一些自动配置类。比如:前端控制器就通过一个         DispatcherServletAutoConfiguration 自动配置类完成,在这个类里面通过定义bean的方式定义了 DispatcherServlet 的实例对象。

8. 项目打包方式为什么是jar?

  SpringBoot默认打jar包。

9. dependencies与dependencyManagement的区别

  dependencies:父工程的dependencies标签下面的jar包会被子模块直接继承使用。

  dependencyManagement:声明/管理依赖的,父工程的 dependencyManagement 标签下面的jar包默认子模块是用不了的,如果子模块要用这个标签里面的jar包得显示的写出来,这个标签要用来统一管理jar包的版本号。

猜你喜欢

转载自www.cnblogs.com/wings-xh/p/12093458.html