Skip to content

tiammomo/Shuai-Java

Repository files navigation

Java 学习项目

基于 JDK 21 的 Java 学习项目,从入门到进阶的完整学习路径。

核心模块

模块 路径 描述 学习文档
basics basics/ Java 基础语法模块,基于 JDK 21 的系统性学习 学习文档
rpc rpc/ RPC 框架模块,轻量级 Java RPC 实现 学习文档
mq mq/ 消息队列模块,涵盖 Kafka、RocketMQ、RabbitMQ 学习文档
elasticsearch elasticsearch/ 搜索引擎模块,涵盖全文检索、向量检索、RAG、LLM 集成 学习文档
multi-agent multi-agent/ 多代理系统模块,基于 Agent-SubAgent-Skills 架构 学习文档

扩展模块

模块 路径 描述 学习文档
orm orm/ ORM 框架模块,整合 Spring + MyBatis 学习文档
microservice microservice/ 微服务模块,整合 Nacos + Dubbo 学习文档
database database/ 数据库模块,整合 MySQL、PostgreSQL、MongoDB、Redis 学习文档
security security/ 安全模块,整合 Spring Security + OAuth2 学习文档
protocol protocol/ 通信协议模块,整合 WebSocket + Scheduler 学习文档
observability observability/ 可观测性模块,整合 Prometheus + Sentinel 学习文档
caffeine caffeine/ 高性能本地缓存,Java 界最优缓存实现 学习文档
gateway gateway/ API 网关模块,Spring Cloud Gateway 路由 学习文档
api-docs api-docs/ API 文档模块,整合 Swagger、Knife4j 学习文档

快速开始

1. 克隆项目

git clone <repository-url>
cd Shuai-Java

2. 环境配置

请参考 环境配置指南 完成开发环境搭建。

3. 运行示例

# ========== 核心模块 ==========

# 运行 basics 综合演示(Java 基础语法综合应用)
mvn -pl basics exec:java -Dexec.mainClass=com.shuai.BasicsIntegratedDemo

# 运行 basics 完整演示
mvn -pl basics exec:java -Dexec.mainClass=com.shuai.BasicsDemo

# 运行 mq 综合演示(消息队列核心概念)
mvn -pl mq exec:java -Dexec.mainClass=com.shuai.MqIntegratedDemo

# 运行 mq 各组件演示
mvn -pl mq exec:java -Dexec.mainClass=com.shuai.kafka.api.KafkaProducerDemo
mvn -pl mq exec:java -Dexec.mainClass=com.shuai.rabbitmq.api.RabbitMqProducerDemo

# 运行 elasticsearch 综合演示(搜索引擎核心功能)
mvn -pl elasticsearch exec:java -Dexec.mainClass=com.shuai.elasticsearch.ElasticsearchIntegratedDemo

# ========== 扩展模块 ==========

# 运行 database 综合演示(多数据源整合)
mvn -pl database exec:java -Dexec.mainClass=com.shuai.database.DatabaseIntegratedDemo

# 运行 caffeine 综合演示(本地缓存最佳实践)
mvn -pl caffeine exec:java -Dexec.mainClass=com.shuai.caffeine.CaffeineIntegratedDemo

# 运行 observability 综合演示(监控与流量控制)
mvn -pl observability exec:java -Dexec.mainClass=com.shuai.observability.ObservabilityIntegratedDemo

# 运行 orm 综合演示(持久层框架)
mvn -pl orm exec:java -Dexec.mainClass=com.shuai.orm.OrmIntegratedDemo

# 运行 microservice 综合演示(微服务架构)
mvn -pl microservice exec:java -Dexec.mainClass=com.shuai.microservice.MicroserviceIntegratedDemo

# 运行 security 综合演示(认证授权)
mvn -pl security exec:java -Dexec.mainClass=com.shuai.security.SecurityIntegratedDemo

# 运行 protocol 综合演示(通信协议)
mvn -pl protocol exec:java -Dexec.mainClass=com.shuai.protocol.ProtocolIntegratedDemo

# 运行 gateway 综合演示(API 网关)
mvn -pl gateway exec:java -Dexec.mainClass=com.shuai.gateway.GatewayIntegratedDemo

# 运行 api-docs 综合演示(API 文档)
mvn -pl api-docs exec:java -Dexec.mainClass=com.shuai.apidocs.ApiDocsIntegratedDemo

# ========== Docker 服务 ==========

# 启动 MySQL(database 模块需要)
cd database/docker && docker-compose up -d mysql

# 启动 Prometheus + Grafana(observability 模块需要)
cd observability/docker && docker-compose up -d prometheus grafana

# 启动 RabbitMQ(mq 模块需要)
cd mq/docker/rabbitmq && docker-compose up -d

环境要求

软件 版本要求 说明
JDK 21 LTS 必须使用 JDK 21 或更高版本
Maven 3.8+ 项目构建工具

学习文档

项目配套学习文档位于 learn_docs 目录:

通用文档

文档 描述
学习路线图 完整的学习路径规划
环境配置指南 JDK 21 和 Maven 环境配置
项目结构说明 项目目录结构和规范
代码规范 Java 编码规范和最佳实践
JDK21新特性 JDK 21 新特性详解

Java 基础知识文档

基于 basics/ 的 Java 基础学习内容,详细文档请参考 basics/README.md

章节 主题 说明
00 概述与快速开始 模块介绍、学习路线
01 Java 基础 数据类型、运算符、字符串、流程控制
02 面向对象进阶 继承、多态、抽象类、接口
03 核心特性 异常、泛型、反射、SPI
04 集合框架 List、Set、Map、Queue
05 IO 流 字节流、字符流、NIO
06 多线程 线程基础、同步、线程池
07 JVM 原理 内存结构、垃圾回收
08 网络编程 TCP、UDP 编程
09 Netty Netty 入门、ByteBuf
10 JSON 处理 Jackson、Gson
11 现代 Java Lambda、Stream、Optional
12 高级特性 BigDecimal、日期时间
13 工具库 Guava、日志、测试框架
14 数据库 JDBC、事务管理
15 设计模式 创建型、结构型、行为型
16 注解 自定义注解、注解处理器

RPC 远程过程调用文档

基于 rpc/ 的 RPC 框架学习内容,详细文档请参考 rpc/README.md

章节 主题 说明
00 概述与快速开始 模块介绍、学习路线
01 网络通信层 TCP 通信、TcpClient、TcpServer
02 协议层 RPC 协议设计、消息编码解码
03 框架层 服务注册、动态代理、调用链路
04 序列化机制 Java 序列化、JSON 序列化
05 实操示例 完整 RPC 调用示例

Elasticsearch 文档

基于 elasticsearch/ 的搜索引擎学习内容,详细文档请参考 elasticsearch/README.md

阶段 主题 说明
第一阶段 Elasticsearch 基础 概述、核心概念、文档操作、查询类型
第二阶段 Elasticsearch 进阶 嵌套查询、评分函数、聚合分析、全文检索
第三阶段 高级主题 地理查询、索引管理、Milvus 入门
第四阶段 向量检索与 RAG 向量检索、Embedding、RAG 实战

Database 数据库文档

基于 database/ 的数据库学习内容,详细文档请参考 database/README.md

数据库 说明
MySQL JDBC 操作、连接池、事务、CRUD
PostgreSQL JDBC 操作、CTEs、窗口函数、JSONB
MongoDB NoSQL 文档数据库、CRUD、聚合、索引
Redis 缓存、分布式锁、数据结构
LevelDB 嵌入式键值存储
RocksDB 高性能嵌入式键值存储
ShardingSphere 分库分表、读写分离
Canal MySQL binlog 订阅与数据同步

MQ 消息队列文档

基于 mq/ 的消息队列学习内容,详细文档请参考 mq/README.md

主题 说明
Kafka 概述 分布式流平台、核心概念
RabbitMQ 概述 AMQP 协议、消息路由
RocketMQ 概述 阿里巴巴分布式消息中间件

Caffeine 缓存文档

基于 caffeine/ 的本地缓存学习内容,详细文档请参考 caffeine/README.md

主题 说明
概述与快速开始 Caffeine 介绍、特性、优势
缓存类型 Cache/LoadingCache/AsyncCache
基本使用 CRUD 操作、配置项
淘汰策略 基于大小/时间/权重/引用
统计监控 命中率统计、监控指标

Observability 可观测性文档

基于 observability/ 的可观测性学习内容,详细文档请参考 observability/README.md

主题 说明
Prometheus 指标监控 指标类型、PromQL 查询、命名规范
Sentinel 流量控制 流控策略、熔断降级、动态规则
Micrometer 指标抽象 Counter、Gauge、Timer、Histogram
Grafana 可视化 仪表盘创建、告警配置

Docker 容器化文档

基于 docker/ 的容器化学习内容,详细文档请参考 docker/README.md

主题 说明
Docker 核心概念 Image、Container、Registry、Daemon
Dockerfile 详解 多阶段构建、常用指令、.dockerignore
Docker Compose 服务编排、网络配置、卷挂载
Kubernetes 集成 Pod、Deployment、Service、Helm

Multi-Agent 多代理系统文档

基于 multi-agent/ 的多代理系统学习内容,详细文档请参考 multi-agent/README.md

主题 说明
架构概述 Agent-SubAgent-Skills 架构设计
核心组件 AgentMessage、AgentTask、AgentContext
子代理详解 Coding、Research、Planning 子代理
技能模块 FileReadSkill、HttpRequestSkill、SearchSkill
协调器与路由器 TaskCoordinator、TaskRouter、MessageRouter
OpenSearch 集成 搜索查询、聚合分析
实践示例 完整使用案例和代码示例
最佳实践 代码规范、性能优化、安全性

参考资料

官方文档

学习资源


作者: tianmomo 创建时间: 2026-01-15 最后更新: 2026-01-17

About

java基础知识合集

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages