1. 即时UI设计共享: 即时设计 - 可实时协作的专业 UI 设计工具即时设计是一款在线可协作的UI设计工具,是可协作的在线sketch、国内版figma,拥有海量的设计资源与素材,支持导入sketch格式的源文件。支持创建交互原型、获取设计标注、快速切图、团队协作等工作。https://js.design/f/acH1v2?p=alEZRpLAkE
2. SQL文件:
1). 分库, 垂直分表, 不水平分表. 四个库: system, tenant, player, result
2) 对应pojo类: 行对象
3) 索引: 避免全文搜索
4) 外键添加, 不利于后期维护
5) 应用连表查询
3. 微服务基础框架搭建:
1) maven ->
2) maven父项目: parent ->springboot starter
3) 子项目管理
4) 父项目间的子项目需互相直接引用依赖
5) mvn idea:module -> 生成.iml文件, 依赖的版本unknown和字符结构出错时无法打包relative parent artifact not found
4. 集成eureka:
1) spring cloud dependencies 依赖: 这是由于父工程选取的是springboot版本2.3.12.RELEASE,在整合网关的时候,需要和父工程版本进行适配,eureka网关pom配置如下,即可解决:
org.springframework.cloud spring-cloud-dependencies${spring-cloud.version} pom import
2) springcloud版本和springboot starter的版本需要匹配, 否则报错noSuchMethodError
"spring-cloud": {
"Finchley.M2": "Spring Boot >=2.0.0.M3 and <2.0.0.M5",
"Finchley.M3": "Spring Boot >=2.0.0.M5 and <=2.0.0.M5",
"Finchley.M4": "Spring Boot >=2.0.0.M6 and <=2.0.0.M6",
"Finchley.M5": "Spring Boot >=2.0.0.M7 and <=2.0.0.M7",
"Finchley.M6": "Spring Boot >=2.0.0.RC1 and <=2.0.0.RC1",
"Finchley.M7": "Spring Boot >=2.0.0.RC2 and <=2.0.0.RC2",
"Finchley.M9": "Spring Boot >=2.0.0.RELEASE and <=2.0.0.RELEASE",
"Finchley.RC1": "Spring Boot >=2.0.1.RELEASE and <2.0.2.RELEASE",
"Finchley.RC2": "Spring Boot >=2.0.2.RELEASE and <2.0.3.RELEASE",
"Finchley.SR4": "Spring Boot >=2.0.3.RELEASE and <2.0.999.BUILD-SNAPSHOT",
"Finchley.BUILD-SNAPSHOT": "Spring Boot >=2.0.999.BUILD-SNAPSHOT and <2.1.0.M3",
"Greenwich.M1": "Spring Boot >=2.1.0.M3 and <2.1.0.RELEASE",
"Greenwich.SR5": "Spring Boot >=2.1.0.RELEASE and <2.1.14.BUILD-SNAPSHOT",
"Greenwich.BUILD-SNAPSHOT": "Spring Boot >=2.1.14.BUILD-SNAPSHOT and <2.2.0.M4",
"Hoxton.SR3": "Spring Boot >=2.2.0.M4 and <2.2.6.BUILD-SNAPSHOT",
"Hoxton.BUILD-SNAPSHOT": "Spring Boot >=2.2.6.BUILD-SNAPSHOT and <2.3.0.M1"
}
3) 分别开启eureka服务端和客户端
4) 开启.yml注解默认配置地址localhost
eureka:
client:
service-url:
defaultZone: http://127.0.0.1:8761/eureka
instance:
prefer-ip-address: true
5) 开启启动类注解支持 @EnableEurekaServer @EnableEurekaClient
5. 集成springgateway:
1) 依赖 springgateway starter和bystrix限流
2) 断言predicate -> 路径, 参数, 方式, 请求头, 响应头;
3) 路由routes -> url, 限流, 限速;
4) 过滤器filters -> 正则表达式
spring:
application:
name: sysgateway
cloud:
gateway:
globalcors:
cors-configurations:
'[/**]': # 匹配所有请求
allowedOrigins: "*" #跨域处理 允许所有的域
allowedMethods: # 支持的方法
- GET
- POST
- PUT
- DELETE
routes:
- id: race
uri: lb://service-race
predicates:
- Path=//race/**
filters:
- StripPrefix= 1
- name: RequestRateLimiter
args:
key-resolver: "#{@ipKeyResolver}"
redis-rate-limiter.replenishRate: 10
redis-rate-limiter.burstCapacity: 20
- id: system
uri: lb://system
predicate:
-Path=/sytem/**
filters:
-StripPrefix= 1
6. 集成MP
1) 依赖mybatisplus 和 数据库驱动mysqlconnector, 分页插件pagehelper
2) 下载ORM框架插件lombok
3) 添加mapper.xml文件
4) .yml文件配置: 配置classpath扫描xml路径, pojo别名包扫描typeAlias
5) 添加注解 @MmapperScann扫描接口(实现baseMapper接口)
6) wrapper条件构造器: new queryWrapper<>(pojo) -> 传入wrapper到实现baseMapper接口的方法selectOne中



