Spring Boot+MyBatis Plus+JWT 問卷系統(tǒng)!開源!
《Java 面試指北》來啦!這是一份教你如何更高效地準備面試的小冊,涵蓋常見八股文(系統(tǒng)設(shè)計、常見框架、分布式、高并發(fā) ......)、優(yōu)質(zhì)面經(jīng)等內(nèi)容。
你好呀,我是 Guide!這里是 JavaGuide 的「優(yōu)質(zhì)開源項目推薦」第 8 期,每一期我都會精選 5 個高質(zhì)量的 Java 開源項目。
時間過的真快,不知不覺「優(yōu)質(zhì)開源項目推薦」系列已經(jīng)持續(xù)半年了,也算是兌現(xiàn)了當初立下的 Flag。

前 7 期的「優(yōu)質(zhì)開源項目推薦」傳送門:
一款基于 Spring Boot + Vue 的一站式開源持續(xù)測試平臺。 用 Java 寫個沙盒塔防游戲!已上架 Steam,Apple Store 一款基于 Java 的可視化 HTTP API 接口開發(fā)神器 一款對業(yè)務代碼無侵入的可視化 Java 進程管理平臺 一個比 Spring 更輕量級的 Web 框架!!!微軟、紅帽都在用 輕量!Google 開源了一個簡易版 Spring ! 一款跨時代的高性能 Java 框架!啟動速度快到飛起
SurveyKing:更專業(yè)的調(diào)查問卷系統(tǒng)

SurveyKing(卷王) 是一個開源免費、功能強大、穩(wěn)定的調(diào)查問卷系統(tǒng),安裝使用非常簡單,支持多種數(shù)據(jù)庫,內(nèi)置 20 多種題型, 支持多人協(xié)作管理問卷。
下圖是 SurveyKing 與其他常見的問卷產(chǎn)品之間的對比:

SurveyKing 技術(shù)棧也是主流技術(shù):
后端:基于 Spring Boot +MyBatis Plus+ FastExcel[1] + Spring Security + JWT+ Thumbnailator+ Caffeine(內(nèi)存緩存)+ MapStruct (Java Bean 映射工具)。 前端:代碼還未開源,技術(shù)棧未知,待項目穩(wěn)定之后也會有開源出來。
FastExcel 是一個用于快速讀取 Excel 文件的工具庫,Thumbnailator 是一個圖像處理工具庫,我在「第五期優(yōu)質(zhì)開源項目推薦」中推薦過這個項目。
SurveyKing 使用效果預覽:


Github 地址:https://github.com/javahuang/surveyking 官網(wǎng):https://surveyking.cn/ 在線演示:https://s.surveyking.cn/user/login
zfoo:極致性能 Java 框架

zfoo 是一款個人開發(fā)的追求極致性能的 Java 框架,既可以用來做網(wǎng)站服務器框架,也可以用來做游戲服務器框架。
tank-game-server[2](坦克游戲,新手友好,難度 2 星) 和 zapp[3] (圖片分享聊天網(wǎng)站,難度 5 星)是使用 zfoo 框架開發(fā)的兩個實際項目案例。

Github 地址:https://github.com/zfoo-project/zfoo 。
junit5:Java 測試框架

junit4 是最常用的單元測試框架,寫過單元測試的肯定都用過它。
junit5 是 junit4 的下一個版本,由三個模塊構(gòu)成:JUnit Platform+ JUnit Jupiter+ JUnit Vintage3。相比較與 junit4,junit5 有更多易用的新特性比如嵌套單元測試、Lambda 支持、重復測試。
//?指定異常拋出測試
@Test
void?assertThrowsException()?{
????String?str?=?null;
????assertThrows(IllegalArgumentException.class,?()?->?{
??????Integer.valueOf(str);
????});
}
Github 地址:https://github.com/junit-team/junit5 官方文檔:https://junit.org/junit5/docs/current/user-guide/
Sa-Token:功能全面的 Java 權(quán)限認證框架
Sa-Token 是一款功能非常全面的 Java 權(quán)限認證框架,支持登錄認證、權(quán)限認證、踢人下線,賬號封禁、單點登錄、OAuth2.0 認證等功能,開箱即用!

下面是部分使用 Sa-Token 進行權(quán)限認證的項目:
EasyAdmin [4]:一個基于 SpringBoot2 + Sa-Token + Mybatis-Plus + Snakerflow + Layui 的后臺管理系統(tǒng),靈活多變可前后端分離,也可單體,內(nèi)置代碼生成器、權(quán)限管理、工作流引擎等。 Sa-Plus [5]:一個基于 SpringBoot 架構(gòu)的快速開發(fā)框架,內(nèi)置代碼生成器。 RuoYi-Vue-Plus[6] : 重寫 RuoYi-Vue 針對 分布式集群 場景全方位升級(不兼容原框架)。 ......
值得提一嘴的是,Sa-Token 這個項目誕生來源于工作中的需求,這個項目的作者公司的項目需要用到踢人下線、賬號封禁等功能,他在找了一圈之后發(fā)現(xiàn)現(xiàn)有的權(quán)限認證框架第一沒有現(xiàn)成的功能,于是他就自己寫了一個框架。不愧是大佬!
Github 地址:https://github.com/dromara/Sa-Token 官網(wǎng):https://sa-token.dev33.cn/index.html
spring-boot-tutorial:Spring Boot 教程
spring-boot-tutoria 這個項目包含了 100 + Spring Boot 文章、教程、視頻教程、項目、指南、源代碼示例......。
視頻教程:

文章:

Github 地址:https://github.com/RameshMF/spring-boot-tutorial
參考資料
FastExcel: https://github.com/dhatim/fastexcel
[2]tank-game-server: https://github.com/zfoo-project/tank-game-server
[3]zapp: https://github.com/zfoo-project/zapp
[4]EasyAdmin : https://gitee.com/lakernote/easy-admin
[5]Sa-Plus : https://gitee.com/click33/sa-plus
[6]RuoYi-Vue-Plus: https://gitee.com/JavaLionLi/RuoYi-Vue-Plus
··········? END? ··············
歡迎加入我的知識星球獲取更多面試干貨,《Java 面試指北》持續(xù)更新完善中!
近期文章精選?:
如果本文對你有幫助的話,歡迎點贊&在看&分享,這對我繼續(xù)分享&創(chuàng)作優(yōu)質(zhì)文章非常重要。感謝????
