REJAVA / LEARNING NOTES
学习导读:Java 知识地图
先看主题之间的关系,再用具体问题检查理解。
根据课程材料整理
本次更新说明
- 提炼知识地图与通用学习方法,保留相关学习范围。
- 移除个人背景、评价及与学习无关的分析。
这份导读把 Java 后端学习内容放到一张地图里。它用于选择学习入口,不代表所有主题都已讲解,也不代表每个主题需要相同的学习深度。
先看五个板块
| 板块 | 要理解的问题 | 主要内容 |
|---|---|---|
| Java 与 JVM(Java 虚拟机) | 数据放在哪里?多条执行流程怎样协作? | 集合、并发、内存模型、垃圾回收、Java 17/21 的语言与运行时特性 |
| 框架与中间件 | 应用如何组织对象、事务、缓存和消息? | Spring(应用框架)、MyBatis(持久层框架)、Redis(内存数据存储)、消息队列 |
| 数据库与存储 | 怎样快速查找数据,并在修改时保持正确? | 索引、执行计划、事务、隔离级别、锁、数据拆分 |
| 分布式与架构 | 多个应用怎样共同完成一项业务? | 一致性、分布式锁、分布式事务、服务调用、限流、故障处理 |
| AI(人工智能)应用 | 怎样把模型与已有后端能力连接起来? | Spring AI(Spring 人工智能集成框架)、LangChain4j(Java 大模型应用框架)、检索、工具调用与智能体 |
用问题检查理解
不要只问“见过这个词吗”。可以逐步检查:
- 合上资料,能否用自己的话解释它解决什么问题?
- 改变一个条件,原来的结论还成立吗?
- 能否用代码或一个具体场景验证判断?
- 隔一段时间再看同一类问题,还能说明理由吗?
例如读完 synchronized(内置同步关键字),可以追问:两个方法名称相同,但调用对象不同,会互相等待吗?这比重复背诵“它是同步关键字”更能检验理解。
主题清单
下面保留课程规划中的学习范围。它是导航,不是完成清单。
Java 基础与运行时
- HashMap(普通哈希映射)与 ConcurrentHashMap(并发哈希映射):查找、修改和并发边界。
- JMM(Java 内存模型)、volatile(可见性关键字)、synchronized(内置同步关键字):哪些操作建立可见性,哪些访问需要同锁协作。
- ThreadPoolExecutor(线程池执行器):参数、接纳流程、队列、拒绝与结果处理。
- JVM(Java 虚拟机)的内存区域、对象回收与 GC(垃圾回收),包括 G1(垃圾优先收集器)和 ZGC(Z 垃圾收集器)。
- Java 17/21 的 virtual thread(虚拟线程)、record(记录类)与 pattern matching(模式匹配)。具体特性按版本区分。
- 运行时排查:处理器占用高、垃圾回收频繁与 OOM(内存耗尽)。
数据库、框架与缓存
- Spring(应用框架)的 IoC(控制反转)、对象生命周期、事务与自动配置。
- MyBatis(持久层框架)的调用过程,以及 N+1 query(一次列表查询后逐项追加查询)问题。
- MySQL(关系型数据库)的 index(索引)、执行计划与 SQL(结构化查询语言)优化。
- transaction(事务)的 ACID(原子性、一致性、隔离性、持久性)、isolation level(隔离级别)、MVCC(多版本并发控制)与锁。
- Redis(内存数据存储)的数据结构、persistence(持久化)与 cache consistency(缓存一致性)。
多应用协作与业务可靠性
- CAP(一致性、可用性、分区容错性)与 BASE(基本可用、软状态、最终一致性)的约束与取舍。
- distributed lock(分布式锁)与 Redisson(Redis 的 Java 客户端)。
- message queue(消息队列)的可靠传递、重复消费、顺序和积压。
- distributed transaction(分布式事务)的 TCC(尝试、确认、取消)、Saga(分步事务与补偿)和本地消息表。
- microservices(微服务)的拆分、service discovery(服务发现)、gateway(网关)和调用追踪。
- high concurrency(高并发)场景中的缓存问题、rate limiting(限流)、circuit breaker(熔断)与 idempotency(幂等性)。
- authentication(认证)、authorization(授权)、JWT(JSON 网络令牌)和 SSO(单点登录)。
- computer networking(计算机网络)中的 TCP(传输控制协议)、HTTP(超文本传输协议)和 HTTPS(安全超文本传输协议)。
AI(人工智能)应用
- Spring AI(Spring 人工智能集成框架)与 LangChain4j(Java 大模型应用框架)的用途。
- RAG(检索增强生成)、embedding(向量化)与 vector database(向量数据库)。
- Agent(智能体)的 Tool(工具)、Memory(记忆)、Planner(规划器),以及 ReAct(推理与行动结合的模式)。
- MCP(模型上下文协议)与 Tool Calling(工具调用)。
从哪里开始
已经能读懂字段、方法和简单执行流程时,可以从学习路线进入,再读可见性与内存模型。
复习目录参考 JavaGuide(Java 学习与面试资料库)。具体技术结论以各课列出的官方来源为准。