# :-: 序
## Applets简介
* Applets是由一个商业级项目升级优化而来的SpringCloud微服务架构,采用Java8 API重构了业务代码,完全遵循阿里巴巴编码规范。采用Spring Boot 2 、Spring Cloud Greenwich 、Mybatis 等核心技术
## 项目地址
* 项目地址:[Applets](ssh://2192542828@qq.com@172.17.165.141:29418/Applets.git)
* 前端UI项目地址(基于Vuet):[applets-admin](ssh://2192542828@qq.com@172.17.165.141:29418/applets-admin.git)
## 主要特性
* 采用前后端分离的模式
* 集成Sentinel从流量控制、熔断降级、系统负载等多个维度保护服务的稳定性。
* 注册中心、配置中心选型Nacos,为工程瘦身的同时加强各模块之间的联动。
* 使用Traefik进行反向代理,监听后台变化自动化应用新的配置文件。
* 极简封装了多租户底层,用更少的代码换来拓展性更强的SaaS多租户系统。
* 借鉴OAuth2,实现了多终端认证系统,可控制子系统的token权限互相隔离。
* 借鉴Security,封装了Secure模块,采用JWT做Token认证,可拓展集成Redis等细颗粒度控制方案。
## 工程结构
~~~
Applets
├── applets-auth -- 授权服务提供
├── applets-common -- 常用工具封装包
├── applets-gateway -- Spring Cloud 网关
├── applets-ops -- 运维中心
├ ├── applets-admin -- spring-cloud后台管理
├ └── applets-develop -- 代码生成
├── applets-service -- 业务模块
├ ├── applets-log -- 日志模块
├ ├── applets-system -- 系统模块
├ └── applets-user -- 用户模块
├── applets-service-api -- 业务模块api封装
├ ├── applets-dict-api -- 字典api
├ ├── applets-system-api -- 系统api
└── └── applets-user-api -- 用户api
~~~
~~~
AppletsTool
├── applets-core-boot -- 业务包综合模块
├── applets-core-launch -- 基础启动模块
├── applets-core-log -- 日志封装模块
├── applets-core-mybatis -- mybatis拓展封装模块
├── applets-core-secure -- 安全模块
├── applets-core-swagger -- swagger拓展封装模块
└── applets-core-tool -- 工具包模块
~~~
- 序
- 快速开始
- 环境要求
- 环境准备
- 工程导入
- 工程运行
- 技术基础
- Java8
- Lambda
- Lambda 受检异常处理
- Stream 简介
- Stream API 一览
- Stream API(上)
- Stream API(下)
- Optional 干掉空指针
- 函数式接口
- 新的日期 API
- Lombok
- SpringMVC
- Swagger
- Mybaties
- Mybaties-plus
- 开发初探
- 新建微服务工程
- 第一个API
- API鉴权
- API响应结果
- Redis 缓存
- 第一个CRUD
- 建表
- 建Entity
- 建Service和Mapper
- 新增API
- 修改API
- 删除API
- 查询API
- 单条查询
- 多条查询
- 分页
- 微服务远程调用
- 声明式服务调用Feign
- 熔断机制 Hystrix
- 开发进阶