文章目录
- 一、SpringBoot特点
- 优点
- 缺点
- 二、时代背景
- 1、微服务
- 2、分布式
- 分布式的困难
- 分布式解决
- 3、云原生
- 上云的困难
- 三、快速上手
- 1、导入依赖
- 2、创建架构编写业务
- MainApplication作为主程序应用
- controller作为业务层
- 3、修改端口号
一、SpringBoot特点
优点
- 创建独立Spring应用
- 内嵌web服务器
- 自动starter依赖,简化构建配置
- 自动配置Spring以及第三方功能
- 提供生产级别的监控、健康检查及外部化配置
- 无代码生成、无需编写XML
SpringBoot是整合Spring技术栈的
一站式框架
SpringBoot是简化Spring技术栈的
快速开发脚手架
缺点
- 迭代快,需要时刻关注变化
- 封装太深,内部原理复杂,不容易精通
二、时代背景
1、微服务
- 微服务是一种架构风格
- 一个应用拆分为一组小型服务
- 每个服务运行在自己的进程内,也就是可独立部署和升级
- 服务之间使用轻量级HTTP交互
- 服务围绕业务功能拆分
- 可以由全自动部署机制独立部署
- 去中心化,服务自治,服务可以使用不同的语言,不同的存储技术
2、分布式
分布式的困难
- 远程调用
- 服务发现
- 负载均衡
- 服务容错
- 配置管理
- 服务监控
- 链路追踪
- 日志管理
- 任务调度
- …
分布式解决
- SpringBoot+SpringCloud
3、云原生
原生应用如何上云,Cloud Native
上云的困难
- 服务自愈
- 弹性伸缩
- 自动化部署
- 灰度发布
- 流量治理
- …
三、快速上手
1、导入依赖
<!--父工程-->
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.3</version>
</parent>
<!--Web依赖-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency>
2、创建架构编写业务
MainApplication作为主程序应用
@SpringBootApplication
public class MainApplication {public static void main(String[] args) {SpringApplication.run(MainApplication.class,args);}
}
controller作为业务层
HelloController代码如下:
//@RestController = @ResponseBody + @Controller@RestController
public class HelloController {@RequestMapping("/hello")public String test(){return "Hello,SpringBoot2!";}
}
扩展一下下:
3、修改端口号
在resources包下创建application.properties
server.port=8888
再次访问原地址,已访问不到。这时则需要在网址中更改我们修改后的端口即可!