1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-16 18:10:13 +08:00

71 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Java 优质开源实战项目
category: 开源项目
icon: project
---
## 博客/论坛系统
下面这几个项目都是非常适合 Spring Boot 初学者学习的,下面的大部分项目的总体代码架构我都看过,个人觉得还算不错,不会误导没有实际做过项目的朋友。
- **[blog](https://github.com/X1192176811/blog)** :一款基于 SpringBoot + Vue 开发的前后端分离博客,非常精致,功能也比通过类型博客系统更加丰富完善。采用 SpringSecurity 进行权限管理ElasticSearch 全文搜索,支持 QQ、微博第三方登录、在线聊天、发布说说等功能。相关阅读[这个 SpringBoot+ Vue 开源博客系统太酷炫了!](https://mp.weixin.qq.com/s/CCzsX3Sn2Q3vhuBDEmRTlw)。
- **[forest](https://github.com/rymcu)** :下一代的知识社区系统,可以自定义专题和作品集。后端基于 SpringBoot + Shrio + MyBatis + JWT + Redis前端基于 Vue + NuxtJS + Element-UI。
- **[vhr](https://github.com/lenve/vhr "vhr")** :微人事是一个前后端分离的人力资源管理系统,项目采用 SpringBoot+Vue 开发。
- **[favorites-web](https://github.com/cloudfavorites/favorites-web)** :云收藏 Spring Boot 2.X 开源项目。云收藏是一个使用 Spring Boot 构建的开源网站,可以让用户在线随时随地收藏的一个网站,在网站上分类整理收藏的网站或者文章。
- **[community](https://github.com/codedrinker/community)** :开源论坛、问答系统,现有功能提问、回复、通知、最新、最热、消除零回复功能。功能持续更新中…… 技术栈 Spring、Spring Boot、MyBatis、MySQL/H2、Bootstrap。
- **[VBlog](https://github.com/lenve/VBlog)** V 部落Vue+SpringBoot 实现的多用户博客管理平台!
- **[My-Blog](https://github.com/ZHENFENG13/My-Blog)** My Blog 是由 SpringBoot + Mybatis + Thymeleaf 等技术实现的 Java 博客系统,页面美观、功能齐全、部署简单及完善的代码,一定会给使用者无与伦比的体验。
## 考试/刷题系统
- **[uexam](https://gitee.com/mindskip/uexam)** :一个非常不错的考试系统!考试系统应用场景还挺多的,不论是对于在校大学生还是已经工作的小伙伴,并且,类似的私活也有很多。相关阅读:[《好一个 Spring Boot 开源在线考试系统!解决了我的燃眉之急》](http://link.zhihu.com/?target=https%3A//mp.weixin.qq.com/s%3F__biz%3DMzg2OTA0Njk0OA%3D%3D%26mid%3D2247491585%26idx%3D1%26sn%3D8d3c6768c22e72d6bfcbeee9624886a7%26chksm%3Dcea1afcaf9d626dc918760289c37025ad526f6255786bc198d2402203df64c873ad7934f58df%26scene%3D178%26cur_album_id%3D1345382825083895808%23rd) 。
- **[PassJava-Platform](https://github.com/Jackson0714/PassJava-Platform)** :一个基于微服务(SpringBoot、Spring Cloud)的面试刷题系统!相关阅读:[《一个基于 Spring Cloud 的面试刷题系统。面试、毕设、项目经验一网打尽》](http://link.zhihu.com/?target=https%3A//mp.weixin.qq.com/s%3F__biz%3DMzg2OTA0Njk0OA%3D%3D%26mid%3D2247497045%26idx%3D1%26sn%3D577175bfd6c040a0df5a494fce6f9758%26chksm%3Dcea1ba9ef9d633883a2e213c0fb9a88bdc87051347d4b3fad2c2befb65d8b16e1ea81d8146dd%26scene%3D178%26cur_album_id%3D1345382825083895808%23rd)。
相关文章:[想要搭建个人博客?我调研了 100 来个 Java 开源博客系统,发现这 5 个最好用!](https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=2247491191&idx=1&sn=fd5efa645c2f2e09f088f6a018cea028&chksm=cea251bcf9d5d8aac8653c686b7a331ffe4e13aa9ffc9beab2c378ea2497a9bd3295ff8d2c51&token=747074901&lang=zh_CN#rd)
## 商城系统
下面的商城系统大多比较复杂比如 mall ,如果没有 Java 基础和 Spring Boot 都还没有摸熟的话不推荐过度研究下面几个项目或者使用这些项目当作毕业设计。
- **[mall](https://github.com/macrozheng/mall "mall")** mall 项目是一套电商系统,包括前台商城系统及后台管理系统,基于 SpringBoot+MyBatis 实现。
- **[mall-swarm](https://github.com/macrozheng/mall-swarm "mall-swarm")** : mall-swarm 是一套微服务商城系统,采用了 Spring Cloud Greenwich、Spring Boot 2、MyBatis、Docker、Elasticsearch 等核心技术,同时提供了基于 Vue 的管理后台方便快速搭建系统。
- **[onemall](https://github.com/YunaiV/onemall)** mall 商城,基于微服务的思想,构建在 B2C 电商场景下的项目实战。核心技术栈,是 Spring Boot + Dubbo 。未来,会重构成 Spring Cloud Alibaba 。
- **[litemall](https://github.com/linlinjava/litemall "litemall")** 又一个小商城。litemall = Spring Boot 后端 + Vue 管理员前端 + 微信小程序用户前端 + Vue 用户移动端。
- **[xmall](https://github.com/Exrick/xmall)** :基于 SOA 架构的分布式电商购物商城 前后端分离 前台商城:Vue 全家桶 后台管理系统:Spring/Dubbo/SSM/Elasticsearch/Redis/MySQL/ActiveMQ/Shiro/Zookeeper 等
- **[newbee-mall](https://github.com/newbee-ltd/newbee-mall)** :newbee-mall 项目(新蜂商城)是一套电商系统,包括 newbee-mall 商城系统及 newbee-mall-admin 商城后台管理系统,基于 Spring Boot 2.X 及相关技术栈开发。
## 权限管理系统
权限管理系统在企业级的项目中一般都是非常重要的,如果你需求去实际了解一个不错的权限系统是如何设计的话,推荐你可以参考下面这些开源项目。
- **[Spring-Cloud-Admin](https://github.com/wxiaoqi/Spring-Cloud-Admin "Spring-Cloud-Admin")** Cloud-Admin 是国内首个基于 Spring Cloud 微服务化开发平台,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关 API 管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。核心技术采用 Spring Boot2 以及 Spring Cloud Gateway 相关核心组件,前端采用 vue-element-admin 组件。
- **[pig](https://gitee.com/log4j/pig "pig")**gitee基于 Spring Boot 2.2、 Spring Cloud Hoxton & Alibaba、 OAuth2 的 RBAC 权限管理系统。
- **[FEBS-Shiro](https://github.com/wuyouzhuguli/FEBS-Shiro "FEBS-Shiro")** Spring Boot 2.1.3Shiro1.4.0 & Layui 2.5.4 权限管理系统。
- **[eladmin](https://github.com/elunez/eladmin)** : 项目基于 Spring Boot 2.1.0 、 Jpa、 Spring Security、redis、Vue 的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 RBAC支持数据字典与数据权限管理支持一键生成前后端代码支持动态路由。
- **[SpringBoot-Shiro-Vue](https://github.com/Heeexy/SpringBoot-Shiro-Vue)** :提供一套基于 Spring Boot-Shiro-Vue 的权限管理思路.前后端都加以控制,做到按钮/接口级别的权限。
## 快速开发脚手架
- **[RuoYi](https://gitee.com/y_project/RuoYi)** RuoYi 一款基于基于 SpringBoot 的权限管理系统 易读易懂、界面简洁美观,直接运行即可用 。
- **[ruoyi-vue-pro](https://github.com/YunaiV/ruoyi-vue-pro)** 基于 SpringBootSpring SecurityJWTVue & Element 的前后端分离权限管理系统。
- **[Guns](https://gitee.com/stylefeng/guns)** 我在上大学的时候就了解和接触过了这个项目,当时我还是一个 Spring 入门不太久的小菜鸟。一晃,不经意间已经过去快 3 年了。Guns 功能齐全 ,采用主流框架 Spring Boot2.0+开发,并且支持 Spring Cloud Alibaba 微服务)。 适合企业后台管理网站的快速开发场景,不论是对于单体和微服务都有支持。
- **[JHipster](https://github.com/jhipster/generator-jhipster)** :开源应用程序平台,可在几秒钟内创建 Spring Boot + Angular / React 项目!
- **[JeecgBoot](https://github.com/zhangdaiscott/jeecg-boot)** :一款基于代码生成器的 JAVA 快速开发平台,开源界“小普元”超越传统商业企业级开发平台!
- **[zuihou-admin-cloud](https://github.com/zuihou/zuihou-admin-cloud)** :基于`SpringCloud(Hoxton.SR7)` + `SpringBoot(2.2.9.RELEASE)` 的 SaaS 型微服务快速开发平台具备用户管理、资源权限管理、网关统一鉴权、Xss 防跨站攻击、自动代码生成、多存储系统、分布式事务、分布式定时任务等多个模块,支持多业务系统并行开发, 支持多服务并行开发,可以作为后端服务的开发脚手架。
- **[Erupt](https://gitee.com/erupt/erupt)** : 使用 Java 注解,快速开发 Admin 管理后台。零前端代码、零 CURD、不生成任何代码、自动建表、注解式 API支持所有主流数据库支持自定义页面支持多数据源提供二十几类业务组件十几种展示形式支持逻辑删除动态定时任务前端后端分离等。 核心技术Spring Boot、JPA、Reflect、TypeScript、NG-ZORRO 等。
- **[SmartAdmin](https://gitee.com/lab1024/smart-admin)** : 互联网企业级的通用型中后台解决方案!使用最前沿的前后台技术栈 SpringBoot 和 Vue前后端分离!代码质量非常高!
- **[BallCat](https://github.com/ballcat-projects/ballcat)** :一个功能完善的快速开发脚手架!除了最基本的权限管理,定时任务功能之外,还额外支持 XSS 过滤SQL 防注入、数据脱敏等多种功能
**相关阅读**
- [听说你要接私活Guide 连夜整理了 5 个开源免费的 Java 项目快速开发脚手架。](https://sourl.cn/cFyLTR)
- [解放双手,再来推荐 5 个 Java 项目开发快速开发脚手架!项目经验和私活都不愁了!](https://sourl.cn/StkiAv)
## 造轮子
- **[guide-rpc-framework](https://github.com/Snailclimb/guide-rpc-framework)** :一款基于 Netty+Kyro+Zookeeper 实现的自定义 RPC 框架-附详细实现过程和相关教程。
- **[mini-spring](https://github.com/DerekYRC/mini-spring)** :简化版的 Spring 框架,能帮助你快速熟悉 Spring 源码和掌握 Spring 的核心原理。代码极度简化,保留了 Spring 的核心功能,如 IoC 和 AOP、资源加载器等核心功能。
- **[mini-spring-cloud](https://github.com/DerekYRC/mini-spring-cloud)** :一个手写的简化版的 Spring Cloud旨在帮助你快速熟悉 Spring Cloud 源码及掌握其核心原理。相关阅读:[手写一个简化版的 Spring Cloud](https://mp.weixin.qq.com/s/v3FUp-keswE2EhcTaLpSMQ) 。
- **[itstack-demo-jvm](https://github.com/fuzhengwei/itstack-demo-jvm)** :通过 Java 代码来实现 JVM 的基础功能(搜索解析 class 文件、字节码命令、运行时数据区等。相关阅读:[《zachaxy 的手写 JVM 系列》](https://zachaxy.github.io/tags/JVM/)
- **[Freedom](https://github.com/alchemystar/Freedom)** :自己 DIY 一个具有 ACID 的数据库。相关项目:[MYDB](https://github.com/CN-GuoZiyang/MYDB)(一个简单的数据库实现)、[toyDB](https://github.com/erikgrinaker/toydb)Rust 实现的分布式 SQL 数据库)。
- **[lu-raft-kv](https://github.com/stateIs0/lu-raft-kv)** :一个 Java 版本的 Raft(CP) KV 分布式存储实现,非常适合想要深入学习 Raft 协议的小伙伴研究。lu-raft-kv 已经实现了 Raft 协议其中的两个核心功能leader 选举和日志复制。如果你想要学习这个项目的话建议你提前看一下作者写的项目介绍比较详细地址http://thinkinjava.cn/2019/01/12/2019/2019-01-12-lu-raft-kv/ 。