Spring Boot是Java開發時經常使用框架,豐富的組件和易用的功能。Web服務腳手架從實際項目中整理昇華,可直接擴展開發並應用於真實生產場景。
node
開源代碼:https://github.com/jextopgit
開發環境github |
版本數據庫 |
功能npm |
Java 8json |
開發語言,Jdk8或者更新版本。緩存 在線課程:掌握Java註解使用技巧,讓代碼簡潔高效網絡
博客:app l 阿里Java開發手冊(學習總結)框架 |
|
IntelliJ IDEA |
集成開發環境,Eclipse也被普遍使用 |
|
Maven |
依賴庫管理 |
|
Git |
代碼管理,GitHub,Gitee,AliCode等 |
|
MySQL |
5.7.18 |
數據庫 |
Redis |
3.2 |
緩存 |
ActiveMQ |
5.15.11 |
消息隊列,也可以使用RabbitMQ,RocketMQ |
ElasticSearch |
7.5.1 |
日誌管理和查詢,ELK套件,配合Kibana使用 |
Postman |
7.13.0 |
調試API |
功能組件 |
版本 |
要點 |
Spring Boot |
2.2.2.RELEASE |
基礎框架 博客: l Spring項目啓動時,ApplicationRunner和CommandLineRunner的用法 |
Apache Shiro |
1.4.0 |
鑑權受權 |
Jwt |
0.9.1 |
Token鑑權 |
Flyway |
6.0.8 |
數據庫版本管理 |
Ali Druid |
1.1.20 |
數據庫鏈接池 |
MyBatis |
3.5.3 |
數據庫持久層 |
MyBatis Plus |
3.3.0 |
擴展MyBatis,含代碼生成工具Generator:生成Entity,Mapper |
Quartz |
2.3.2 |
異步任務調度 |
fastjson |
1.2.60 |
JSON數據處理 |
Apache Commons |
開發工具包,lang,collections,codec,io |
|
HTTP Components |
網絡工具包,httpclient, httpcore, httpmime |
|
slf4j |
1.7.29 |
日誌處理,配合ELK。也常使用log4j, logback |
JUnit Jupter |
5.5.2 |
單元測試 |
Mockito |
3.1.0 |
模擬測試環境,配合JUnit使用 |
Lombok |
1.18.10 |
簡化代碼,因爲對代碼侵入程度較大,謹慎使用 |
Swagger-UI |
2.6.1 |
API文檔,可直接調用接口。也經常使用JavaDoc |
Actuator |
服務監控,配合圖形化展現工具,好比Prometheus + Grafana |
部署發佈 |
要點 |
Docker容器 |
鏡像託管使用Ali容器鏡像服務https://cr.console.aliyun.com/ 博客: |
Terraform資源編排 |
使用阿里雲ROS服務https://rosnext.console.aliyun.com/ |
腳手架 |
功能/接口 |
要點 |
調用控制 |
@AccessLimited |
自定義註解,控制REST接口訪問頻率 |
@AuthRequired |
生成access_token,受權接口訪問 |
|
@UserRequired |
配合Shiro,控制用戶角色和受權 |
|
服務監控 |
chk/http |
檢查服務HTTP鏈接外網 |
chk/db |
檢查MySQL數據庫鏈接操做 |
|
chk/cache |
檢查Redis緩存鏈接操做 |
|
chk/mq |
檢查ActiveMQ消息隊列 |
|
chk/job |
檢查Quartz任務調度 |
|
chk/json |
檢查JSON數據處理 |
|
文件上傳下載 |
file/upload |
支持多個文件上傳 |
file/download |
文件下載 |
|
Jext技術社區 |
jext/info |
社區信息接口,返回在線課程和博客信息 |
管理後臺 |
功能 |
JavaScript |
開發語言,ES2015+ |
VS Code |
集成開發環境,也常使用WebStorm, Sublime等 |
node |
npm包管理工具 |
Ant Design Pro v4 |
基於Ant Design, React, UmiJS等,https://pro.ant.design/ |