之前已经学习了 spring 的 IOC容器、AOP、springMVC 开发web应用等等,这里的 spring 实际是指 spring-framework
这个框架。
然而,宏观上的 spring 是一个生态圈。
spring 可以做什么?参考官网:
spring 生态圈里有丰富的内容,这些组合起来就可以帮我们完成这么多事情,上面也只是几大特色而已。
当然,在使用生态圈里的内容进行整合使用的过程中也是有点痛苦的,往往会陷入"配置地狱"。这一点,在之前的springMVC学习中也已经有所体验了,这还仅仅是整合了 springMVC 而已。
那么,谁来解决这个问题呢?没错,就是springboot
。
解放繁琐的配置,是springboot
与生俱来的使命。
springboot 就相当于是一个高层的框架,底层还是spring-framework
。它可以整合整个 spring 系列的技术栈,帮我们完成应用开发,不用写那么多繁重的配置。
打个比方,你买电脑虽然可以自己 diy组装,但是需要非常强的动手能力。但是大多数人还是喜欢省事点,直接买个品牌机器,开箱即用。
本次学习是基于springboot2
,由于spring5
引入了重大升级,所以springboot2
相比之前版本也是有不少的使用变化。
spring5 中的大更新就是响应式编程,对应的在 springboot2
中,数据访问层就支持了构建异步数据流的方式进行响应式开发。
创建独立Spring应用
内嵌web服务器:在之前springmvc 开发应用,最终把应用打成一个war包,最终部署到tomcat上。所以,目标环境里还需要装tomcat,进行配置等。
使用soringboot,目标环境即使没有tomcat也没关系,这里已经集成了,直接运行即可。
自动 starter 依赖,简化构建配置:
之前开发springmvc,需要导入一大堆依赖,现在只需要导入一个依赖web-starter
。另外还可以自动帮我们控制好导入的版本,保证可以协同工作。
自动配置Spring以及第三方功能:这个就是我们最喜欢的,可以解放配置的功能。
提供生产级别的监控:提供生产级别的监控、健康检查及外部化配置。几乎不用任何配置,运维人员就可以监控到指标。
无代码生成,无需编写 xml:底层自动发现场景,进行配置。
总之,springboot
是整个 spring 技术栈的一站式框架。或者说是,简化 spring 技术栈的快速开发脚手架。
版本抵达快,需要时刻关注变化。这也变相说明生态社区非常活跃,其实也不算是个缺点,算特点。
封装太深,内部原理负责,不容易精通。
最好的老师,还得是官方文档,地址:https://spring.io/projects/spring-boot
进入官方地址后,点击LEARN
可以看到有好多版本,以正式稳定版为主,点击2.5.4 GA
后的文档连接,进入说明文档。
大概分为下面的模块:
官方文档是后续学习过程中,依赖的重要学习资料。
如果要去了解版本的更新内容,可以到 https://github.com/spring-projects/spring-boot/wiki#release-notes
查看版本日志。
【SpringBoot2 从0开始】springboot 与 spring
原文:https://www.cnblogs.com/pingguo-softwaretesting/p/15177851.html