1.前面已经对maven有一个简单的介绍
(1)maven是一个跨平台的项目管理工具
(2)主要服务于基于Java平台的项目构建、依赖管理和项目信息管理。不重复发明轮子
(3)Maven帮助快速发布项目
(4)Maven仓库帮我们管理jar包,并且可以在仓库中下载需要的jar包(整个过程只需要在pox.xml中配置即可,自动完成)
2.Maven仅仅解放了我们对jar包的操作,对于一个Web项目不仅需要大量大三方jar,还需要大量配置文件搭建框架
3.Spring Boot的出现解放了对大量配置文件的操作
(1) SpringBoot是一个框架,一种全新的编程规范,他的产生简化了框架的使用
(2)所谓简化是指简化了Spring众多框架中所需的大量且繁琐的配置文件
(3) SpringBoot是一个服务于框架的框架,服务范围是简化配置文件
4.Spring Boot优缺点
(1)优点:
<1>独立运行
1.SpringBoot内置了Tomcat容器,可以直接执行 main 方法运行
2.项目部署可以打成jar的文件在服务器上通过执行java -jar xx.jar命令来运行服务
3.内嵌servlet容器:可以选择内嵌Tomcat、jetty、Undertow,这样无须以war包形式部署项目
<3>起步依赖
1.spring-boot-starter-xxx就是SpringBoot的起步依赖具体实现, 提供starter简化Maven配置
2.例如要实现一个Web项目,那就只要依赖spring-boot-starter-web即可
3.基于不同的功能,官方为我们整合了大量的起步依赖,简化了搭建项目的工作
4.起步依赖提供了可靠的依赖管理,降低了项目引入问题版本和依赖冲突的风险
<4>自动配置
1.SpringBoot使用@EnableAutoConfiguration 或者@SpringBootApplication注解 开启组件扫描和自动配置
2. 通过@SpringBootApplication的exclude参数关闭特定 的自动配置
例如:@SpringBootApplication(exclude = XAutoConfiguration.class
3.自动装配Spring:根据在类路径中的jar包,类、为jar包里面的类自动配置Bean,这样会极大地减少我们要使用的配置
4.SpringBoot只考虑大多数的开发场景,并不是所有的场景,若在实际开发中需要配置Bean,而SpringBoot没有提供支持,则可以自定义自动配置。
<5>应用监控
1.Spring Boot 监控核心是 spring-boot-starter-actuator 依赖
2.增加依赖后, Spring Boot 会默认配置一些通用的监控,比如 jvm 监控、类加载、健康监控等
3.Actuator插件是SpringBoot原生提供的一个服务,可以通过暴露端点路由,用来输出应用中的诸多端点信息
<6>无代码生产和xml配置:SpringBoot不是借助与代码生成来实现的,而是通过条件注解来实现的,这是Spring4.x提供的新特性
<7>与云计算的天然集成
(2)缺点:
<1>如果你不认同spring框架,也许这就是缺点
5.SpringBoot CLI:是SpringBoot提供的控制台命令工具
总结:
(1)Maven帮我们管理了jar的查询创建
(2)Spring Boot帮我们简化大量的配置文件