- spring缺点:配置繁琐、依赖繁琐
- Springboot:自动配置、起步依赖:依赖传递、辅助功能(嵌入式服务器)
起步依赖原理分析
- 1.spring-boot-starter-parent定义了各种技术的版本信息,组合了一套最优搭配的技术版本
- 2.spring-boot-starter-web定义了完成该功能需要的坐标合集,其中大部分版本信息来自于父工程
- 3.我们的工程继承parent,引入start后,通过依赖传递,可以简单获得需要的jar包,并且不会存在版本冲突问题。
自动配置
当spring容器启动后,一些配置类、bean对象就自动存入IOC容器中,不需要手动去声明。 该注解标识在SpringBoot工程引导类上,是SpringBoot中最最最重要的注解。该注解由三个部分组成:
- @SpringBootConfiguration:该注解与 @Configuration注解作用相同,用来声明当前也是一个配置类。
- @ComponentScan:组件扫描,默认扫描当前引导类所在包及其子包。
- @EnableAutoConfiguration:SpringBoot实现自动化配置的核心注解。
配置文件类型
2种:properties和yml/yaml 默认配置文件名称:application 同级目录下优先级:properties>ymml>yaml
什么是Springboot?
1.Spring是一个框架,用来简化spring的初始搭建过程,然后使用特定的方法(properties、yml)这个配置形式,然后创立这种spring应用程序main方法然后进行运行。然后它里面内嵌了一个tomcat无需部署的war文件,就可以直接运行。maven配置也简化了,springboot就是starter一个自动化的配置,简而言之,就是springboot简化了spring应用的开发约定大于配置,去繁从简。使用just run可以独立运行应用。
spring、springboot、springMvc区别
- spring是一个IOC容器,用来管理Bean,使用依赖注入实现控制反转,可以很方便的整合各种框架,提供AOP机制弥补OOP的代码重复问题、更方便将不同类不同方法中的共同处理抽取成切面、自动注入给方法执行,比如日志、异常等
- springmvc是spring对web框架的一个解决方案,提供了一个总的前端控制器Servlet,用来接收请求,然后定义了一套路由策略(url到handle的映射)及适配执行handle,将handle结果使用视图解析技术生成视图展现给前端
- springboot是spring提供的一个快速开发工具包,让程序员能更方便、更快速的开发spring+springmvc应用,简化了配置(约定了默认配置),整合了一系列的解决方案(starter机制)、redis、mongodb、es,可以开箱即用