Github点赞超多的Spring Boot学习教程+实战项目推荐!
Github点赞接近 100k 的Spring Boot学习教程+实战项目推荐!
很明显的一个现象,除了一些老项目,现在 Java 后端项目基本都是基于 Spring Boot 进行开发,毕竟它这么好用以及天然微服务友好。不夸张的说,Spring Boot 是 Java 后端领域最最最重要的技术之一,熟练掌握它对于 Java 程序员至关重要。
这篇文章我会推荐一些优质的 Spring Boot 开源教程 和 Spring Boot 实战项目,帮助大家深入学习 Spring Boot。项目质量的话,大家可以放心。
不会 Spring Boot 或者想要深入学习 Spring Boot 的小伙伴直接学起来好吧!(♂️ 不需要 Spring 基础也可以直接学 Spring Boot,Java 基础和 MySQL 会了就可以直接上手学起来!)
另外,这些项目 Guide 是根据下面三个标准选出:
- 项目是否还在继续维护更新,维护更新的频率如何。
- 项目的质量如何,这一点可以从 star、issue 以及 pr 的数量侧面反映出来。
- 代码质量如何,是否是僵尸项目。关于代码质量,这里说明一点,我最反感别人无脑 diss 开源项目代码质量差了,你又能耐的话自己写一个。确实,每一个开源项目都有很多可以优化的地方,这点无法否认。
Spring Boot 教程推荐
下面的项目中要属艿艿的 SpringBoot-Labs 最为深入,这点当你看完所有项目之后就很容易看出来。
我开源的 springboot-guide 的话,有时间还是继续维护起来吧!分享一些实际有用的东西,让大家看了之后又就可以用到项目上。
1.spring-boot-demo(15.2k star)
spring boot demo 是一个用来深度学习并实战 spring boot 的项目,目前总共包含 65 个集成 demo,已经完成 53 个。
你也可以通过这个项目学习到 Spring Boot 与基本所有技术的集成,比如 actuator(监控)、JPA(强大的 ORM 框架)、mybatis(强大的 ORM 框架)、mybatis-plus(快速操作 Mybatis)等等。
项目地址:https://github.com/xkcoding/spring-boot-demo 。
这个仓库的部分内容如下:
2.SpringBoot-Labs(4k star)
基于 Spring Boot 2.X 的 Spring Boot 深入学习项目。
市面上的 Spring Boot 基础入门文章很多,但是深度入门文章却很少。艿艿的 Spring Boot 系列,带你全面且深度地学习 Spring Boot 2.X 。
另外,这个项目不光有 Spring Boot 2.X,还有 Spring Cloud、Spring Cloud Alibaba、Dubbo、分布式消息队列、分布式事务这些内容。
项目地址: https://github.com/YunaiV/SpringBoot-Labs 。
这个仓库的部分内容如下:
3.springboot-guide(2.1k star)
这个项目是 Guide 自己开源的,说实话更新的不是特别勤快,有一段时间没更新了。
这个项目主要涵盖了 Spring Boot 比较重要的一些知识点,比如如何优雅地进行异常处理。
项目地址:https://github.com/Snailclimb/springboot-guide 。
这个仓库的部分内容如下:
4.springBoot(3.8k star)
这个项目同样是 springboot 框架与其它组件结合如 jpa、mybatis、websocket、security、shiro、cache 等。
项目地址:https://github.com/527515025/springBoot。
这个仓库的部分内容如下:
Spring Boot 实战项目/脚手架推荐
对于下面的开源项目,可以这样说每一个开源项目都有很多可以优化的地方。如果你想真正学到东西的话,建议不光要把项目跑起来更要去优化!
简单说几个比较容易的优化点:
- 全局异常处理,很多项目这方面都做的不是很好,可以参考我的这篇文章:《使用枚举简单封装一个优雅的 Spring Boot 全局异常处理!》 来做优化。
- 项目的技术选型优化,比如使用 Guava 做本地缓存的地方可以换成 Caffeine 。Caffeine 的各方面的表现要更加好!再比如 Controller 层是否放了太多的业务逻辑。
- 数据库方面:数据库设计可否优化?索引是否使用使用正确?SQL 语句是否可以优化?
- ......
1.eladmin(9.4k star)
eladmin 是一款基于 Spring Boot 2.1.0 、 Jpa、 Spring Security、redis、Vue 的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 RBAC,支持数据字典与数据权限管理,支持一键生成前后端代码,支持动态路由。
这个开源项目基本稳定,并且后续作者还会继续优化。并且,完全开源!这个真的要为原作者点个赞,如果大家觉得这个项目有用的话,建议可以稍微捐赠一下原作者支持一下。后端整理代码质量、表设计等各个方面来说都是很不错的。前后端分离,前端使用的是国内常用的 vue 框架,也比较容易上手。
项目地址: https://github.com/elunez/eladmin 。
后台首页
角色管理页面
2.mall(36.1k star)
一位朋友的项目,非常不错,值得推荐!
mall 这个项目的话,是一套电商系统,包括前台商城系统及后台管理系统,基于 SpringBoot+MyBatis 实现,采用 Docker 容器化部署。
前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。 后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。
另外,这个项目还提供了详细的文档,帮助你进一步学习。
项目地址:https://github.com/macrozheng/mall 。
3.vhr(16.9k star)
江南一点雨大佬的力作。整个项目不论是前端还是后端的代码质量都比较高,非常值得学习。
然后,vhr(微人事)这个项目的话,是一个前后端分离的人力资源管理系统,后端基于 SpringBoot 开发,前端基于 Vue 开发,并且,项目加入常见的企业级应用所涉及到的技术点,例如 Redis、RabbitMQ 等。
另外,这个项目提供了非常详细的文档。
项目地址:https://github.com/lenve/vhr 。
4.favorites-web(3.9k star)
基于 Spring Boot 2.X 的开源项目。favorites-web(云收藏)是一个使用 Spring Boot 构建的开源网站,可以让用户在线随时随地收藏的一个网站,在网站上分类整理收藏的网站或者文章。
项目地址:https://github.com/cloudfavorites/favorites-web 。
5.community(0.8k star)
开源论坛、问答系统,现有功能提问、回复、通知、最新、最热、消除零回复功能。功能持续更新中…… 技术栈 Spring、Spring Boot、MyBatis、MySQL/H2、Bootstrap。
目前这个写在简历上的重复率还好,自己稍微改造一下还是很有潜力的。
项目地址:https://github.com/codedrinker/community 。
6.SpringBoot-Shiro-Vue(2.7k star)
提供一套基于 Spring Boot-Shiro-Vue 的权限管理思路.前后端都加以控制,做到按钮/接口级别的权限
项目地址: https://github.com/Heeexy/SpringBoot-Shiro-Vue 。
后记
Github点赞接近 100k 的Spring Boot学习教程+实战项目推荐!
Github点赞超多的Spring Boot学习教程+实战项目推荐!的更多相关文章
- Spring Boot学习笔记:项目开发中规范总结
Spring Boot在企业开发中使用的很广泛,不同的企业有不同的开发规范和标准.但是有些标准都是一致的. 项目包结构 以下是一个项目常见的包结构 以上是一个项目的基本目录结构,不同的项目结构会有差异 ...
- spring boot学习(2) SpringBoot 项目属性配置
第一节:项目内置属性 application.properties配置整个项目的,相当于以前的web.xml: 注意到上一节的访问HelloWorld时,项目路径也没有加:直接是http://loca ...
- Spring Boot学习大全(入门)
Spring Boot学习(入门) 1.了解Spring boot Spring boot的官网(https://spring.io),我们需要的一些jar包,配置文件都可以在下载.添置书签后,我自己 ...
- spring boot 学习番外篇:超快速项目初始化
超快速完成 Spring Boot 项目初始化 最近,在浏览 SPRING 官网时,发现一个超级方便的小工具,可以帮助我们快速创建一个 Spring Boot 项目,前提就是你能连接互联网. 依赖 支 ...
- Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客
==他的博客应该不错,没有细看 Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客 http://blog.csdn.net/u012706811/article/det ...
- Spring boot学习1 构建微服务:Spring boot 入门篇
Spring boot学习1 构建微服务:Spring boot 入门篇 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...
- Spring Boot学习笔记2——基本使用之最佳实践[z]
前言 在上一篇文章Spring Boot 学习笔记1——初体验之3分钟启动你的Web应用已经对Spring Boot的基本体系与基本使用进行了学习,本文主要目的是更加进一步的来说明对于Spring B ...
- spring boot 学习(十四)SpringBoot+Redis+SpringSession缓存之实战
SpringBoot + Redis +SpringSession 缓存之实战 前言 前几天,从师兄那儿了解到EhCache是进程内的缓存框架,虽然它已经提供了集群环境下的缓存同步策略,这种同步仍然需 ...
- Spring Boot学习资料汇总
1. SpringFramework 重点学习 IOC容器,Web MVC framework,AOP 等 官网文档 http://docs.spring.io/spring/docs/cur ...
随机推荐
- go中语句为什么不用加分号;结束
不用人加 编译的时候自动加了分号; 编译器工作原理 首先,在一行中,寻找成对的符号,比如一对字符串的引号.一对圆括号,一对大括号 上述任务完成后,在一行中没有其他成对的标示,然后就在行尾追加分号; 所 ...
- wpf内存泄漏问题
http://www.cnblogs.com/Cindys/archive/2012/05/17/2505893.html http://blogs.msdn.com/b/jgoldb/archive ...
- Dart简易教程 (1)---数据类型 运算符,类转换换
从下面开始学习DART编程 以下是一个简单的示例: main(){ var number = 42; print(number);}程序说明,dart是一个强大的脚本类语言,可以不预先定义变量类型 , ...
- ❤️❤️用最简单的方法在Webstorm中打开已存在项目 和 新建Vue项目 (亲测实用)❤️❤️
目录 一:打开已存在项目时 二:新建一个vue项目 使用webstorm创建vue项目创建vue项目各个公司用的工具都不一样 最常见的有HBuilder X,WebStorm,Visual Stu ...
- HTML+CSS设计个人主页
在个人主页的设计中,我采用了圣代布局和div分块.效果图如下: <!DOCTYPE html> <html lang="en"> <head> ...
- Linux没有/var/log/messages日志文件
1.新安装的CentOS8没有/var/log/messages日志文件: 安装rsyslog: dnf install -y rsyslog 或 yum install -y rsys ...
- Docker系列(17)- MySQL同步数据
#获取镜像 [root@localhost ~]# docker pull mysql:5.7 #启动容器,需要做数据挂载!安装启动mysql,需要配置密码的,这是注意点! #官方安装文档:docke ...
- Shell系列(3)- 命令别名
前言 使用alias命令创建命令别名,是Bash的一个基本功能:别名有两种形式,一种暂时的,Linux重启后失效.另外一种永久的通过该配置文件实现 使用更改别名 临时 命令格式:alias 别名='原 ...
- Linux系列(23) - echo
作用:打印 格式:echo [选项] [输出内容] 选项:-e :支持反斜线控制的字符转换 前置条件:必须加选项-e才能使用 控制字符 作用 \a 输出警告音 \b 退格符,也就是向左删除键 \n 换 ...
- pyqt5实现窗口跳转并关闭上一个窗口
关键在于要定义一个关闭窗体的函数colsewin() 然后将按键与该函数连接(connect)在一起即可 import sys from PyQt5.QtWidgets import QMainWin ...