目录
3.创建三个实体类:Item、User、Order (Lombok)
1.新建 spring boot 起步模块:sp02-itemservice
5.创建 Service 实现类 ItemServiceImpl (@Service 标记 @Slf4j 日志)
6.创建 Controller 控制类 ItemController(@RestController 接受请求,标记控制层 @Slf4j 日志)
5.创建 Service 实现类 UserServiceImpl
6.创建 Controller 控制类 UserController
5.创建 Service 实现类 OrderServiceImpl
6.创建 Controller 控制类 OrderController
一、spring cloud 介绍
1.spring cloud 是一系列框架的集合。它利用 spring boot 的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用 spring boot 的开发风格做到一键启动和部署。
2.给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
3.使用 spring cloud 一站式解决方案能在从容应对业务发展的同时大大减少开发成本,在目前五花八门的分布式解决方案中提供了标准化的、一站式的技术方案
eureka
微服务治理,服务注册和发现
ribbon
负载均衡、请求重试
hystrix
断路器,服务降级、熔断
feign
ribbon + hystrix 集成,并提供声明式客户端
hystrix dashboard 和 turbine
hystrix 数据监控
zuul
API 网关,提供微服务的统一入口,并提供统一的权限验证
config
配置中心
bus
消息总线, 配置刷新
sleuth+zipkin
链路跟踪
二、开发环境:
- Idea
- 插件:Lombok 、EditStarters 、Free MyBatis Plugin、Maven Helper
- Maven:使用阿里仓库和中央仓库,来回切换更新
- springboot版本: 2.3.2.RELEASE
- springcloud版本: Hoxton.SR8
三、spring cloud
集成多种工具,解决为服务中的各种问题
- 注册和发现:Nacos 、 Eureka
- 远程调用: OpenFeign
- 系统容错和限流: Sentinel 、Hystrix
- 错误监控:Hystrix Dashboard 、Turbine
- 配置中心 :Nacos 、Config
- 链路跟踪 :Sleuth 、Zipkin
四、Spring MVC 接收参数的几个注解
五、搭建spring cloud 业务模块
-
File - New project settings - settings for new projects
-
这里配置配置好,每次新建工程,都应用这个配置
(一)、概述
-
新建 Empty project 工程: springcloud1
-
新建 Maven 模块: sp01-commons --- 存放业务模块中的通用代码
-
pom.xml 添加依赖
-
代码
-
商品、用户、订单实体类
-
三个业务接口
-
三个工具类:cookie工具、json工具、封装响应数据的工具
-
- 商品服务 item service,端口 8001
- 用户服务 user service,端口 8101
- 订单服务 order service,端口 8201
(二)、item-commons通用项目
1.新建maven项目
2.添加依赖
3.创建三个实体类:Item、User、Order (Lombok)
4.创建三个servise接口:
public interface ItemService {
List<Item> getItems(String orderId);
void decreaseNumbers(List<Item> list);
}
public interface UserService {
User getUser(Integer id);
void addScore(Integer id, Integer score);
}
public interface OrderService {