查看: 80|回复: 1

2022 GitHub 优质 Java 开源项目推荐

[复制链接]

2

主题

11

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2023-7-20 16:51:49 | 显示全部楼层 |阅读模式
你好,我是小金。这篇文章我会推荐一些优质的 Java 开源项目,有实战项目,也有学习教程,适合新手,同时也适合老手。
「优质 Java 开源项目推荐」系列传送门:https://javaguide.cn/open-source-project/


你可以通过 awesome-java (非常棒的 Java 开源项目集合,找 Java 项目必备)找到更多优质的 Java 开源项目。

  • Github 地址:https://github.com/CodingDocs/awesome-java
  • Gitee 地址:https://gitee.com/SnailClimb/awesome-java
  • 在线阅读:https://javaguide.cn/open-source-project/
Mindustry:沙盒塔防游戏



Mindustry 是一款 Java 语言编写的沙盒塔防游戏,目前已经上架 Apple Store、Google Play 和 Steam,支持 Windows,Linux,安卓等平台。
是的!!!你没看错,这款游戏就是使用 Java 语言编写的。
目前的话,这个游戏在 Apple Store 评分 4.7,Google Play 评分 4.6, Steam 上也有 96% 的好评。非常厉害了!




这个游戏的很多用户直呼:“一玩就停不下来了!”


另外,这个项目使用 Gradle 构建,如果你想要在本地运行这个游戏的话,你的 JDK 版本至少是 JDK16。
作者在 README 文档中提供了这个项目详细的运行方法,你可以直接在本地对游戏进行修改。
不过,最让我佩服的是这个项目作者的毅力。虽然这个游戏已经发布 4 年多了,但是作者依然还在不断维护游戏,不断完善游戏的玩法。
大家感受一下项目作者的提交记录吧!简直恐怖如斯!



  • 项目地址:https://github.com/Anuken/Mindustry
  • 官网:https://mindustrygame.github.io/
JavaGuide:Java 面试+学习指南

大学里学习 Java 的同学比较多,所以这里也推荐一个学习 Java 必备的项目。
「Java 学习+面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识


Github 地址:https://github.com/Snailclimb/JavaGuide
在线网站(推荐):https://javaguide.cn/
推荐一个纯净的 Java 学习&面试网站:https://javaguide.cn/
mall4cloud:微服务商城系统

mall4cloud 是一个高质量的微服务 B2B2C 电商商城系统。



mall4cloud-web

开源的商城项目已经有非常多了,mall4cloud 这个项目我觉得有下面这些亮点:

  • 技术栈主流 :Spring Boot + Spring Cloud Alibaba;
  • 代码质量相对较高 :完全准守阿里巴巴代码规约;
  • 功能完善 :除了具备商城最基本的功能之外,还自带丰富的营销工具。
不过,比较遗憾的是这个商城项目的 Web 端的话暂未开源。

  • Github 地址:https://github.com/gz-yami/mall4cloud
  • Gitee 地址:https://gitee.com/gz-yami/mall4cloud
  • 官网:https://www.mall4j.com
相关文章推荐:这个 SpringBoot 电商系统值得推荐!
eladmin:前后端分离的后台管理系统

eladmin 是一款基于 Spring Boot 2.1.0 、 Jpa、 Spring Security、redis、Vue 的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 RBAC,支持数据字典与数据权限管理,支持一键生成前后端代码,支持动态路由。
这个开源项目基本稳定,并且后续作者还会继续优化。完全开源!这个真的要为原作者点个赞,如果大家觉得这个项目有用的话,建议可以稍微捐赠一下原作者支持一下。后端整理代码质量、表设计等各个方面来说都是很不错的。前后端分离,前端使用的是国内常用的 vue 框架,也比较容易上手。


项目地址:https://github.com/elunez/eladmin 。



后台首页


mini-spring-cloud:简化版 Spring Cloud

mini-spring-cloud 是一个手写的简化版的 Spring Cloud,旨在帮助你快速熟悉 Spring Cloud 源码及掌握其核心原理。
mini-spring-cloud 实现了 Spring Cloud 生态提供的核心功能比如服务注册、服务发现、负载均衡、集成 Feign 简化调用、流量控制、熔断降级、API 网关。并且,对于每一块功能的实现,mini-spring-cloud 还附带了详细的源码解析。


Github 地址:https://github.com/DerekYRC/mini-spring-cloud
推荐一个纯净的 Java 学习&面试网站:https://javaguide.cn/
ANTLR:强大的语法解析器

Antlr(Another Tool for Language Recognition) 是一款强大的词法和语法解析器,可用于读取、处理、执行和翻译结构化的文本或二进制文件。
Antlr 广泛应用于学术界和工业界构建各种语言、工具和框架,比如 Twitter 搜索中的查询解析就是基于 ANTLR 来做的,再比如 HBase 的访问客户端 Phoenix 使用 Antlr 进行 SQL 解析。
Antlr 使用 Java 语言实现,支持 Java、C#、JavaScript、Python、Go、C++、Swift 等编程语言,目前在 Github 上收获了 12k+ Star。


Antlr 的作者是谷歌的 Tech Lead,同时也是旧金山大学的数据科学和计算机教授,从 1989 年开始就一直深耕语言工具的开发和研究。一直到他自认满意的 ANTLR 4 发布,前后用了 25 年的时间。
相关阅读:Antlr4 简介

  • Github 地址:https://github.com/antlr/antlr4
  • 官网:https://www.antlr.org/
推荐一个纯净的 Java 学习&面试网站:https://javaguide.cn/
QR-Code-generator:高质量的二维码生成库

QR-Code-generator 是一款支持多语言(Java,TypeScript/JavaScript,Python,Rust,C++,C)的高质量的二维码生成库。


与同类型的二维码生成库相比,QR-Code-generator 的代码更简介并且文档注释更详细。
Java 语言基于 QR-Code-generator 生成二维码的代码示例如下:



  • Github 地址:https://github.com/nayuki/QR-Code-generator 。
  • 官网:https://www.nayuki.io/page/qr-code-generator-library 。
forest:下一代的知识社区系统

forest 是下一代的知识社区系统,可以自定义专题和作品集。


forest 的后端基于 SpringBoot + Shrio + MyBatis + JWT + Redis,前端基于 Vue + NuxtJS + Element-UI。
非常小众的一个项目,看得出来作者维护比较认真,并且很有想法。根据项目首页介绍,这个项目未来还可能会增加专业知识题库、社区贡献系统、会员系统。





  • Github 地址:https://github.com/rymcu 。
  • 演示:https://rymcu.com/ 。
推荐一个纯净的 Java 学习&面试网站:https://javaguide.cn/
SurveyKing:更专业的调查问卷系统



SurveyKing(卷王) 是一个开源免费、功能强大、稳定的调查问卷系统,安装使用非常简单,支持多种数据库,内置20多种题型, 支持多人协作管理问卷。
下图是 SurveyKing 与其他常见的问卷产品之间的对比:


SurveyKing 技术栈也是主流技术:

  • 后端:基于 Spring Boot +MyBatis Plus+ FastExcel + Spring Security + JWT+ Thumbnailator+ Caffeine(内存缓存)+ MapStruct (Java Bean 映射工具)。
  • 前端:代码还未开源,技术栈未知,待项目稳定之后也会有开源出来。
FastExcel 是一个用于快速读取 Excel 文件的工具库,Thumbnailator 是一个图像处理工具库,我在「第五期优质开源项目推荐」中推荐过这个项目。
SurveyKing 使用效果预览:





  • Github 地址:https://github.com/javahuang/surveyking
  • 官网:https://surveyking.cn/
  • 在线演示:https://s.surveyking.cn/user/login
zfoo:极致性能 Java 框架



zfoo 是一款个人开发的追求极致性能的Java框架,既可以用来做网站服务器框架,也可以用来做游戏服务器框架。
tank-game-server(坦克游戏,新手友好,难度2星) 和 zapp (图片分享聊天网站,难度5星)是使用 zfoo 框架开发的两个实际项目案例。


Github 地址:https://github.com/zfoo-project/zfoo 。
推荐一个纯净的 Java 学习&面试网站:https://javaguide.cn/
junit5:Java 测试框架



junit4 是最常用的单元测试框架,写过单元测试的肯定都用过它。
junit5 是 junit4 的下一个版本,由三个模块构成:JUnit Platform+ JUnit Jupiter+ JUnit Vintage3。相比较与 junit4,junit5 有更多易用的新特性比如嵌套单元测试、Lambda支持、重复测试。  



  • Github 地址:https://github.com/junit-team/junit5
  • 官方文档:https://junit.org/junit5/docs/current/user-guide/
Sa-Token:功能全面的Java权限认证框架

Sa-Token 是一款功能非常全面的Java权限认证框架,支持登录认证、权限认证、踢人下线,账号封禁、单点登录、OAuth2.0认证等功能,开箱即用!


下面是部分使用 Sa-Token 进行权限认证的项目:

  • EasyAdmin :一个基于SpringBoot2 + Sa-Token + Mybatis-Plus + Snakerflow + Layui 的后台管理系统,灵活多变可前后端分离,也可单体,内置代码生成器、权限管理、工作流引擎等。
  • Sa-Plus :一个基于 SpringBoot 架构的快速开发框架,内置代码生成器。
  • RuoYi-Vue-Plus : 重写 RuoYi-Vue 针对 分布式集群 场景全方位升级(不兼容原框架)。
  • ......
值得提一嘴的是,Sa-Token 这个项目诞生来源于工作中的需求,这个项目的作者公司的项目需要用到踢人下线、账号封禁等功能,他在找了一圈之后发现现有的权限认证框架第一没有现成的功能,于是他就自己写了一个框架。不愧是大佬!

  • Github 地址:https://github.com/dromara/Sa-Token
  • 官网:https://sa-token.dev33.cn/index.html
推荐一个纯净的 Java 学习&面试网站:https://javaguide.cn/
spring-boot-tutorial:Spring Boot 教程

spring-boot-tutoria 这个项目包含了 100 +  Spring Boot 文章、教程、视频教程、项目、指南、源代码示例......。
视频教程:


文章:


Github 地址:https://github.com/RameshMF/spring-boot-tutorial
Java 面试学习网站推荐

再强烈强烈强烈推荐一个 Github 12w+ star 的 Java 面试项目,这个项目会非常详细地告诉你 Java 面试需要准备什么,结构清晰,内容质量非常高。


这个项目的知识点总结的非常好,拿来复习对应的知识点也是非常不错的选择。另外,如果你是新手的话,参照着这个项目的目录去学习也是很不错的。
这个项目就是 JavaGuide ,我的学长 Guide哥 维护的一份涵盖大部分 Java 程序员所需要掌握的核心知识的开源文档。
其实,不光是 Java 程序员可以阅读这份教程,里面的很多内容对于程序员来说都是通用的。


并且,项目里面的文章质量非常高,非常适合拿来准备面试或者复习知识点。
真不是我刻意吹捧这位学长的项目,我校计算机科学学院的很多老师都多次推荐过这个项目,我认识的很多计科院的同学都是参考这份文档来学习以及备战面试的。

  • Github 地址: https://github.com/Snailclimb/JavaGuide 。
  • Gitee 地址:https://gitee.com/SnailClimb/JavaGuide 。
  • 在线阅读网站: https://javaguide.cn/ 。
Github掘金计划由3位志同道合热爱开源的小伙伴维护,我们想让 Github 和 Gitee 上优质的开源项目被更多人看到!
如果有帮助的话点个在看或者赞就是对我们最大的鼓励!欢迎关注@Github掘金计划,持续分享优质开源项目!
回复

使用道具 举报

1

主题

5

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2023-7-20 16:52:23 | 显示全部楼层
nice,eladmin 好久了项目,作者真的敬业
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表