# spring-boot-demo **Repository Path**: StarSea007/spring-boot-demo ## Basic Information - **Project Name**: spring-boot-demo - **Description**: Java、Spring Boot、Spring Cloud教程、技术栈示例代码。在工作中的最佳实践,帮助快速上手运用到工作中。 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-03-02 - **Last Updated**: 2024-09-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Spring Boot Demo 实践 ## 项目介绍 1. 个人学习资料整理,以及在工作中的最佳实践,初衷是能更快的帮助开发,运用到工作中。 2. 每个demo一般会有快速入门的简单版本,以及一个详细版。 3. 会尽可能的完善文档,便于某些功能在个性化需求时,能尽快的找出答案。 ## 项目结构 ``` spring-boot-demo ├── demo-spring-boot-starter # 自定义starter ├── demo-starter-test # 测试自定义starter功能 ├── java-code # java基础(黑马) ├── spring-boot-alibaba-bom # alibaba依赖 ├── spring-boot-bom # 项目模块依赖 ├── spring-boot-common # 公共方法 ├── spring-boot-elasticSearch # 搜索引擎(完善) ├── spring-boot-excel # easyexcel导入导出 ├── spring-boot-mq-kafka # 消息可靠投递,可靠消费概述 ├── spring-boot-mq-rabbitmq # 消息可靠投递,可靠消费概述 ├── spring-boot-mybatis-plus │ ├── spring-boot-mybatis-plus-dynamic # mybatis-plus 多数据源 │ ├── spring-boot-mybatis-plus-generate # mybatis-plus 代码生成器,自定义模板 │ └── spring-boot-mybatis-plus-simple # mybatis-plus 快速入门 ├── spring-boot-redis # redis缓存 ├── spring-boot-redisson # 分布式锁(完善) ├── spring-boot-resource # minio上传 ├── spring-boot-security # 安全框架 ├── spring-boot-sharding-jdbc # 分库分表(完善) ├── spring-boot-swagger # swagger 在线文档 ├── spring-boot-threading # 线程池 ├── spring-boot-websocket # 双向通信协议 ├── spring-cloud-dubbo # 远程调用 ├── spring-cloud-fegin # 远程调用 ├── spring-cloud-nacos # 注册中心、配置中心 ├── spring-cloud-zookeeper # 分布式应用程序协调服务 └── 其它 #正在补充中 ``` ## 常见技术 [java-code](java-code/README.md) 1. java 基础相关 [spring-boot-mybatis-plus](spring-boot-mybatis-plus/README.md) 1. mybatis-plus 整合mp快速入门 2. mybatis-plus 代码生成器 3. mybatis-plus 多数据源 4. mybatis-plus 多租户,自动分页,乐观锁,防止全表更新与删除,动态表名,sql性能规范,自定义ID生成器,数据填充,枚举等 [spring-boot-swagger](spring-boot-swagger/README.md) 1. 整合swagger2 示例 2. 整合 logback 日志 [spring-boot-excel](spring-boot-excel/README.md) 1. 原生POI excel 模板导入导出 2. 原生POI excel 百万数据导出,导入 3. csv 导入导出 4. easyexcel 的xlsx,xls,csv格式导出,导入 5. easyexcel 模板填充 [spring-boot-security](spring-boot-security/README.md) 1. 整合 security 安全框架案例 2. 整合 validator 参数校验示例 [xxl-job](https://gitee.com/xuxueli0323/xxl-job) * xxl-job-admin:可以看作管理各个任务的管理器 * xxl-job-core:公共依赖部分 * xxl-job-executor-samples:该模块下存放着俩个可以直接运行的模板 * xxl-job-executor-sample-frameless:传统的执行程序 * xxl-job-executor-sample-springboot:整合了 SpringBoot 的程序 [spring-boot-resource](spring-boot-resource/README.md) 1. 实现上传文件到minio 2. 将上传文件信息保存到数据库 [spring-boot-threading](spring-boot-threading/README.md) 1. 自定义线程池 2. 异步任务@Async注解 [spring-boot-websocket](spring-boot-websocket/README.md) 1. websocket协议 [spring-boot-completableFuture](spring-boot-completableFuture/README.md) 1. 异步编排 [demo-spring-boot-starter](demo-spring-boot-starter/README.md) 实现自定义starter功能 ## 微服务技术 [spring-cloud-nacos](spring-cloud-nacos/README.md) 1. nacos 注册中心 2. nacos 配置中心 [spring-cloud-fegin](spring-cloud-fegin/README.md) 1. 远程调用 fegin [spring-cloud-dubbo](spring-cloud-dubbo/README.md) 1. 远程调用 dubbo [spring-cloud-zookeeper](spring-cloud-zookeeper/README.md) 1. 分布式锁 ## 中间件技术 [spring-boot-redis](spring-boot-redis/README.md) 1. 整合 redis 缓存 2. redis 类型示例 3. 整合 Spring Cache 缓存 [spring-boot-mq-rabbitmq](spring-boot-mq-rabbitmq/README.md) 1. RabbitMQ消息可靠投递,可靠消费 2. 工作、发布订阅、路由、主题模式示例 [spring-boot-mq-kafka](spring-boot-mq-kafka/README.md) 1. 一个高吞吐量、可扩展的分布式消息队列系统,用于实时数据流处理和消息传递。它具有持久性、可靠性和高可用性的特点。 [spring-boot-elasticSearch](spring-boot-elasticSearch/README.md) 1. 整合 ElasticSearch 搜索引擎 ## 分布式技术 [spring-boot-sharding-jdbc](spring-boot-sharding-jdbc/README.md) 1. 分库分表快速入门 [spring-boot-redisson](spring-boot-redisson/README.md) 1. 整合 redisson 分布式锁 [spring-boot-seata](spring-boot-seata/README.md) 1. 整合 seata 分布式事务 [spring-cloud-sentinel](spring-cloud-sentinel/README.md) [spring-cloud-skywalking](spring-cloud-skywalking/README.md) ## 工作流 ### activity [spring-boot-activity](spring-boot-activity/README.md) ### flowable [spring-boot-flowable](spring-boot-flowable/README.md) ## 大数据相关 **Hadoop** 用于存储和处理大规模数据集。它包括Hadoop分布式文件系统(HDFS)和基于MapReduce编程模型的计算引擎。 **Hive** 一个数据仓库基础设施,提供类SQL的查询语言(HiveQL)和在Hadoop上进行数据摘要、查询和分析的能力。 **Spark** 一个快速、通用的大数据处理引擎,具有高效的内存计算能力。它支持分布式数据处理、流处理、图计算和机器学习等多种数据处理任务。 **Flink** 分布式流处理框架,主要用于实时数据处理。 **HBase** 一个分布式、面向列的NoSQL数据库,用于存储大规模结构化数据。它建立在Hadoop的HDFS之上,并提供快速的随机读/写能力。 **Storm** 一个开源的分布式实时计算系统,用于处理高速数据流。它具有低延迟、可靠性和可扩展性的特点,常用于实时数据分析和流处理应用。 **Cassandra** 一个高度可伸缩、分布式的NoSQL数据库,用于处理大规模的分布式数据。它具有高吞吐量、容错性和灵活的数据模型。 **Pig** 一个用于大数据分析的高级数据流语言和执行框架。它简化了对大规模数据集的复杂处理,并提供了一组用于数据转换和分析的操作。 ## 部署相关 **docker** 一个开源的容器化平台,它可以让开发人员将应用程序打包成一个独立的容器,从而在不同的环境中进行部署。 **kubernetes** 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。 **kubesphere** 打造一个以 Kubernetes 为内核的云原生分布式操作系统,它的架构可以非常方便地使第三方应用与云原生生态组件进行即插即用(plug-and-play)的集成,支持云原生应用在多云与多集群的统一分发和运维管理。 ## 其他技术 **分布式日志** ELK Stack (Elasticsearch, Logstash, Kibana) **分布式监控** 1. Prometheus 2. Grafana 3. Nagios