简介
SpringBoot框架:
SpringBoot是基于Spring开发,不仅继承了Spring框架原有的优秀特性,并且通过提供默认配置的方式
进一步简化了Spring应用的初始搭建和开发过程。
SpringBoot有一句很出名的话就是约定大于配置
,它集成了大量的第三方库配置,例如Redis,Mysql,MongoDB,Dubbo,kafka等等,在SpringBoot应用中几乎都可以零配置开箱即用。大部分SpringBoot应用都只需要非常少量的配置代码,开发者能够更加专注于业务逻辑。
同时SpringBoot通过集成大量的框架使得依赖包的冲突以及引用的不稳定性等问题得到了很好的解决。
优点
- 快速构建一个独立的Spring应用程序
- 嵌入Tomcat、Jetty或者underTow等应用服务器,无需部署war文件
- 提供Starter POMs来简化Maven配置和减少版本冲突所带来的的问题
- 对Spring和第三方库提供默认配置,也可修改默认值,简化框架配置
- 提供生产就绪型功能,如指标、健康检查和外部配置
- 无需配置XML,无代码生成,开箱即用
为什么要使用SpringBoot?
SpringBoot简化了Spring应用的开发是最直观的一方面,而另一方面得力于微服务组件支持。
微服务:
微服务是一种架构风格,我们开发一个应用应该是一组小型服务组成,每个小型服务都运行在自己的进程内,小服务之间通过HTTP方式进行互联互通。
和微服务对应的就是单体应用,它是all in one的风格,他把所有的东西放在一起打成war包放在如Tomcat服务器里运行。单体应用测试部署简单,方便水平扩展,但缺点也显而易见,更改一个小需求也需要重新部署整个应用,牵一发而动全身。同时日益增长的用户需求也是一个很大的挑战。
微服务架构通过功能划分拆分成一个个独立的应用,改动只需关注它本身,同时可以根据服务的使用程度进行扩展。
近年来微服务越来越火,SpringBoot和微服务的热度是同步的。因为SpringCloud是一套完整的微服务解决方案,而它又基于SpringBoot框架。
所以可以说SpringCloud带动了SpringBoot,SpringBoot成就了SpringCloud
。
快速搭建
使用Maven创建
-
创建Maven工程,引入Maven依赖
<!--继承springboot父项目--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.6.7</version> <relativePath/> <!-- lookup parent from repositor