强无敌!一个项目涵盖SpringBoot集成各种场景

大家好,我是 Java陈序员。我们都知道,作为 Java 后端开发肯定绕不开 Spring,而 SpringBoot 的横空出世更是帮助我们开发者可以快速迭代一个项目!

SpringBoot 之所以强大,是因为支持自动化配置,可以快速装配组件,如持久化框架缓存消息队列日志等等。

今天给大家介绍一个 SpringBoot 集成各种场景的项目,可以用来学习,也可以开箱即用无需重复造轮子

项目简介

spring boot demo 是一个用来深度学习并实战 spring boot 的项目,目前总共包含 66 个集成 demo,已经完成 55 个。

目前已经集成功能:

  • actuator:监控
  • admin:可视化监控
  • logback:日志
  • aopLog:通过 AOP 记录 Web 请求日志
  • 统一异常处理:json 级别和页面级别
  • freemarker:模板引擎
  • thymeleaf:模板引擎
  • Beetl:模板引擎
  • Enjoy:模板引擎
  • JdbcTemplate:通用 JDBC 操作数据库
  • JPA:强大的 ORM 框架
  • Mybatis:强大的 ORM 框架
  • 通用 Mapper:快速操作 Mybatis
  • PageHelper:通用的 Mybatis 分页插件
  • Mybatis-plus:快速操作 Mybatis
  • BeetlSQL:强大的 ORM 框架
  • upload:本地文件上传和七牛云文件上传
  • Redis:缓存
  • ehcache:缓存
  • email:发送各种类型邮件
  • task:基础定时任务
  • quartz:动态管理定时任务
  • xxl-job:分布式定时任务
  • swaggerAPI 接口管理测试
  • security:基于 RBAC` 的动态权限认证
  • SpringSessionSession 共享
  • Zookeeper:结合 AOP 实现分布式锁
  • RabbitMQ:消息队列
  • Kafka:消息队列
  • websocket:服务端推送监控服务器运行信息
  • socket.io:聊天室
  • ureport2:中国式报表
  • 打包成 War 文件
  • 集成 ElasticSearch:基本操作和高级查询
  • Async:异步任务
  • 集成Dubbo:采用官方的starter
  • MongoDB:文档数据库
  • neo4j:图数据库
  • Docker:容器化
  • JPA 多数据源
  • Mybatis 多数据源
  • 代码生成器
  • GrayLog:日志收集
  • JustAuth:第三方登录
  • LDAP:增删改查
  • 动态添加/切换数据源
  • 单机限流:AOP + Guava RateLimiter
  • 分布式限流:AOP + Redis + Lua
  • ElasticSearch 7.x:使用官方 Rest High Level Client
  • HTTPS
  • Flyway:数据库初始化
  • UReport2:中国式复杂报表

项目地址

arduino 复制代码
https://github.com/xkcoding/spring-boot-demo

运行使用

开发环境

  • JDK 1.8 +
  • Maven 3.5 +
  • IntelliJ IDEA ULTIMATE 2018.2 + (注意:务必使用 IDEA 开发,同时保证安装 lombok 插件)
  • Mysql 5.7 + (尽量保证使用 5.7 版本以上,因为 5.7 版本加了一些新特性,同时不向下兼容。项目会尽量避免这种不兼容的地方,但还是建议尽量保证 5.7 版本以上)

代码导入

  1. 使用 git 克隆代码:
bash 复制代码
git clone https://github.com/xkcoding/spring-boot-demo.git
  1. 使用 IDEA 打开 clone 下来的项目

  2. 找到各个 ModuleApplication 类就可以运行各个 demo

注意:

  1. 每个 demo 均有详细的 README,运行 demo 之前记得先看看
  2. 有些 demo 需要事先初始化数据库数据的

模块代码介绍

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

bash 复制代码
https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

bash 复制代码
https://chencoding.top:8090/#/

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!

相关推荐
码事漫谈17 分钟前
从后端开发者到Agent工程师:一份系统性的学习指南
后端
皮皮林55124 分钟前
MinIO 不再“开放”,RustFS 能否成为更优选择?
java
多喝开水少熬夜32 分钟前
树与图的深度和广度优先遍历-java实现邻接表存储
java·深度优先·宽度优先
码事漫谈33 分钟前
后端开发如何将创新转化为专利?案例、流程与实操指南
后端
潲爺1 小时前
Java IDEA学习之路:第九周课程笔记归纳
java·学习·intellij-idea
化作星辰1 小时前
java 给鉴权kafka2.7(sasl)发送消息权限异常处理
java·大数据·开发语言·kafka
KYumii1 小时前
智慧判官-分布式编程评测平台
vue.js·spring boot·分布式·spring cloud·java-rabbitmq
user_admin_god1 小时前
企业级管理系统的站内信怎么轻量级优雅实现
java·大数据·数据库·spring boot
q***82911 小时前
Spring Boot 3.3.4 升级导致 Logback 之前回滚策略配置不兼容问题解决
java·spring boot·logback
Kuo-Teng1 小时前
LeetCode 206: Reverse Linked List
java·算法·leetcode·职场和发展