# 149. 商品详情页动态渲染系统:Spring Boot 与微服务的关系以及开发回顾
第一版里面的内容 spring boot 也用了,但是几乎没有什么介绍, 本次课程会简单讲解下
# spring boot 的特点
快速开发 spring 应用的框架
比如使用 sring mvc + spring + mybatis 开发一个系统
- 首先配置一大堆 xml 配置文件
- 其次部署和安装 tomcat、jetty 等容器
- 跟 java web 打交道(servlet、listener、filter)
- 手工部署到 tomcat 或者 jetty 等容器中,发布一个 web 应用
简单来说,spring boot 就是看中了这种 java web 应用繁琐而且重复的开发流程,采用了 spring 之上封装的一套框架(spring boot)
尽可能提升我们的开发效率,让我们专注于自己的业务逻辑即可
内嵌 tomcat 和 jetty 容器
不需要单独安装容器,jar 包直接发布一个 web 应用
简化 maven 配置
通过 parent 这种方式,一站式引入需要的各种依赖
基于注解的零配置思想
和各种流行框架
spring web mvc、mybatis、spring cloud 无缝整合
# spring boot 和微服务
- spring boot 不是微服务技术
- spring boot 只是一个用于加速开发 spring 应用的基础框架,简化工作,开发单块应用很适合
- 如果要直接基于 spring boot 做微服务,相当于需要自己开发很多微服务的基础设施,比如基于 zookeeper 来实现服务注册和发现
- spring cloud 才是微服务技术
# spring boot 入门开发
本小结内容没有什么新的,可以说是车祸现场了,最后的结论就是参考此;
对于 spring boot 基础环境请参考 (第一版:库存服务的开发框架整合与搭建:spring boot + mybatis + jedis)[../039.md]
本次使用 spring cloud 相关说明
项目搭建,视频中使用 mavn,本笔记使用 gradle-4.8.1 + spring boot 2.1.6
gradle 版本的不同对于生成的 build.gradle 语法可能不太同
同样,对于 spring boot 来说,2.0.4 版本与 2.1.6 版本生成的 build.gradle 写法相差也有点大