[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-3921":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":24,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":32,"readmeContent":33,"aiSummary":34,"trendingCount":16,"starSnapshotCount":16,"syncStatus":17,"lastSyncTime":35,"discoverSource":36},3921,"JCSprout","crossoverJie\u002FJCSprout","crossoverJie","👨‍🎓 Java Core Sprout : basic, concurrent, algorithm ","https:\u002F\u002Fcrossoverjie.top\u002FJCSprout",null,"Java",26912,6988,1642,30,0,2,4,1,45,"MIT License",false,"master",true,[26,27,28,29,30,31],"algorithm","basic-java","concurrent-programming","java","jvm","netty","2026-06-12 02:00:56","\n\u003Cdiv align=\"center\">  \n\n\u003Cimg src=\"https:\u002F\u002Fs2.loli.net\u002F2024\u002F05\u002F17\u002FD8brxzCPh5vpOFk.png\" width=\"\"\u002F> \n\u003Cbr\u002F>\n\n[![Build Status](https:\u002F\u002Ftravis-ci.org\u002FcrossoverJie\u002FJCSprout.svg?branch=master)](https:\u002F\u002Ftravis-ci.org\u002FcrossoverJie\u002FJCSprout)\n[![QQ群](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FQQ%E7%BE%A4-787381170-yellowgreen.svg)](https:\u002F\u002Fjq.qq.com\u002F?_wv=1027&k=5HPYvQk)\n\n[qq0groupsvg]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FQQ%E7%BE%A4-787381170-yellowgreen.svg\n[qq0group]: https:\u002F\u002Fjq.qq.com\u002F?_wv=1027&k=5HPYvQk\n\n\u003C\u002Fdiv>\u003Cbr>\n\n\n> `Java Core Sprout`：处于萌芽阶段的 Java 核心知识库。\n\n**访问这里获取更好的阅读体验**：[https:\u002F\u002Fcrossoverjie.top\u002FJCSprout\u002F](https:\u002F\u002Fcrossoverjie.top\u002FJCSprout\u002F)\n\n\u003Cbr\u002F>\n\n\u003Cdiv align=\"center\">  \n\n\u003Ca href=\"https:\u002F\u002Ft.zsxq.com\u002FodQDJ\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fs2.loli.net\u002F2024\u002F05\u002F17\u002FzRkabDu2SKfChLX.png\" alt=\"202405171520366.png\">\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n最近开通了知识星球，感谢大家对 `JCSprout` 的支持，为大家提供 100 份 10 元优惠券，也就是 69-10=59 元，具体福利大家可以扫码参考再决定是否加入。\n\n> PS: 后续会继续维护该项目，同时加入现在热门的 Golang\u002Fkubernetes\u002FOpenTelemetry 等知识点，感兴趣的可以加入星球当面催更（当然内容也会更新到这个项目里）。\n\n\n| 📊 |⚔️ | 🖥 | 🚏 | 🏖  | 🌁| 📮 | 🔍 | 🚀 | 🌈 |💡\n| :--------: | :---------: | :---------: | :---------: | :---------: | :---------:| :---------: | :-------: | :-------:| :------:|:------:|\n| [集合](#常用集合) | [多线程](#java-多线程)|[JVM](#jvm) | [分布式](#分布式相关) |[框架](#常用框架第三方组件)|[架构设计](#架构设计)| [数据库](#db-相关) |[算法](#数据结构与算法)|[Netty](#netty-相关)| [附加技能](#附加技能)|[联系作者](#联系作者) |\n\n\n\n### 常用集合\n- [ArrayList\u002FVector](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FArrayList.md)\n- [LinkedList](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FLinkedList.md)\n- [HashMap](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FHashMap.md)\n- [HashSet](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002Fcollection\u002FHashSet.md)\n- [LinkedHashMap](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002Fcollection\u002FLinkedHashMap.md)\n\n### Java 多线程\n- [多线程中的常见问题](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FThread-common-problem.md)\n- [synchronized 关键字原理](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FSynchronize.md)\n- [多线程的三大核心](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FThreadcore.md)\n- [对锁的一些认知](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FJava-lock.md)\n- [ReentrantLock 实现原理 ](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FReentrantLock.md)\n- [ConcurrentHashMap 的实现原理](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FConcurrentHashMap.md)\n- [如何优雅的使用和理解线程池](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FThreadPoolExecutor.md)\n- [深入理解线程通信](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002Fconcurrent\u002Fthread-communication.md)\n- [一个线程罢工的诡异事件](docs\u002Fthread\u002Fthread-gone.md)\n- [线程池中你不容错过的一些细节](docs\u002Fthread\u002Fthread-gone2.md)\n- [『并发包入坑指北』之阻塞队列](docs\u002Fthread\u002FArrayBlockingQueue.md)\n\n### JVM\n- [Java 运行时内存划分](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FMemoryAllocation.md)\n-  [类加载机制](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FClassLoad.md)\n-  [OOM 分析](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FOOM-analysis.md)\n- [垃圾回收](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FGarbageCollection.md)\n- [对象的创建与内存分配](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FnewObject.md)\n- [你应该知道的 volatile 关键字](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002Fconcurrent\u002Fvolatile.md)\n- [一次内存溢出排查优化实战](https:\u002F\u002Fcrossoverjie.top\u002F2018\u002F08\u002F29\u002Fjava-senior\u002FOOM-Disruptor\u002F)\n- [一次 HashSet 所引起的并发问题](docs\u002Fjvm\u002FJVM-concurrent-HashSet-problem.md)\n- [一次生产 CPU 100% 排查优化实践](docs\u002Fjvm\u002Fcpu-percent-100.md)\n\n### 分布式相关\n\n- [分布式限流](http:\u002F\u002Fcrossoverjie.top\u002F2018\u002F04\u002F28\u002Fsbc\u002Fsbc7-Distributed-Limit\u002F)\n- [基于 Redis 的分布式锁](http:\u002F\u002Fcrossoverjie.top\u002F2018\u002F03\u002F29\u002Fdistributed-lock\u002Fdistributed-lock-redis\u002F)\n- [分布式缓存设计](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FCache-design.md)\n- [分布式 ID 生成器](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FID-generator.md)\n\n### 常用框架\\第三方组件\n\n- [Spring Bean 生命周期](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002Fspring\u002Fspring-bean-lifecycle.md)\n- [Spring AOP 的实现原理](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FSpringAOP.md) \n- [Guava 源码分析（Cache 原理）](https:\u002F\u002Fcrossoverjie.top\u002F2018\u002F06\u002F13\u002Fguava\u002Fguava-cache\u002F)\n- [轻量级 HTTP 框架](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002Fcicada)\n- [Kafka produce 源码分析](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002Fkafka\u002Fkafka-product.md)\n- [Kafka 消费实践](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fdocs\u002Fframe\u002Fkafka-consumer.md)\n\n\n### 架构设计\n- [秒杀系统设计](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FSpike.md)\n- [秒杀架构实践](http:\u002F\u002Fcrossoverjie.top\u002F2018\u002F05\u002F07\u002Fssm\u002FSSM18-seconds-kill\u002F)\n- [设计一个百万级的消息推送系统](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002Farchitecture-design\u002Fmillion-sms-push.md)\n\n### DB 相关\n\n- [MySQL 索引原理](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FMySQL-Index.md)\n- [SQL 优化](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FSQL-optimization.md)\n- [数据库水平垂直拆分](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FDB-split.md)\n- [一次分表踩坑实践的探讨](docs\u002Fdb\u002Fsharding-db.md)\n\n### 数据结构与算法\n- [红包算法](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Fred\u002FRedPacket.java)\n- [二叉树层序遍历](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Falgorithm\u002FBinaryNode.java#L76-L101)\n- [是否为快乐数字](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Falgorithm\u002FHappyNum.java#L38-L55)\n- [链表是否有环](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Falgorithm\u002FLinkLoop.java#L32-L59)\n- [从一个数组中返回两个值相加等于目标值的下标](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Falgorithm\u002FTwoSum.java#L38-L59)\n- [一致性 Hash 算法原理](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FConsistent-Hash.md)\n- [一致性 Hash 算法实践](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fdocs\u002Falgorithm\u002Fconsistent-hash-implement.md)\n- [限流算法](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FLimiting.md)\n- [三种方式反向打印单向链表](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Falgorithm\u002FReverseNode.java)\n- [合并两个排好序的链表](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Falgorithm\u002FMergeTwoSortedLists.java)\n- [两个栈实现队列](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Falgorithm\u002FTwoStackQueue.java)\n- [动手实现一个 LRU cache](http:\u002F\u002Fcrossoverjie.top\u002F2018\u002F04\u002F07\u002Falgorithm\u002FLRU-cache\u002F)\n- [链表排序](.\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Falgorithm\u002FLinkedListMergeSort.java)\n- [数组右移 k 次](.\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Falgorithm\u002FArrayKShift.java)\n- [交替打印奇偶数](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fcrossoverjie\u002Factual\u002FTwoThread.java)\n- [亿级数据中判断数据是否不存在](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002Fdocs\u002Falgorithm\u002Fguava-bloom-filter.md) \n\n### Netty 相关\n- [SpringBoot 整合长连接心跳机制](https:\u002F\u002Fcrossoverjie.top\u002F2018\u002F05\u002F24\u002Fnetty\u002FNetty(1)TCP-Heartbeat\u002F)\n- [从线程模型的角度看 Netty 为什么是高性能的？](https:\u002F\u002Fcrossoverjie.top\u002F2018\u002F07\u002F04\u002Fnetty\u002FNetty(2)Thread-model\u002F)\n- [为自己搭建一个分布式 IM(即时通讯) 系统](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002Fcim)\n\n### 附加技能\n\n- [TCP\u002FIP 协议](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002FTCP-IP.md)\n- [一个学渣的阿里之路](https:\u002F\u002Fcrossoverjie.top\u002F2018\u002F06\u002F21\u002Fpersonal\u002FInterview-experience\u002F)\n- [如何成为一位「不那么差」的程序员](https:\u002F\u002Fcrossoverjie.top\u002F2018\u002F08\u002F12\u002Fpersonal\u002Fhow-to-be-developer\u002F)\n- [如何高效的使用 Git](https:\u002F\u002Fgithub.com\u002FcrossoverJie\u002FJCSprout\u002Fblob\u002Fmaster\u002FMD\u002Fadditional-skills\u002Fhow-to-use-git-efficiently.md)\n\n\n### 联系作者\n\n> crossoverJie#gmail.com\n\n![index.jpg](https:\u002F\u002Fi.loli.net\u002F2021\u002F10\u002F12\u002FckQW9LYXSxFogJZ.jpg) \n","JCSprout 是一个专注于 Java 核心知识的学习资源库，涵盖了基础、并发编程和算法等内容。该项目通过详细的文档和示例代码深入解析了 Java 集合框架、多线程机制、JVM 内存模型等关键知识点，并引入了 Netty 和分布式系统相关的内容。其技术特点在于提供全面且结构化的学习路径，适合从初学者到进阶开发者的各类人群使用，尤其对于希望深入了解 Java 底层原理和技术细节的开发者来说非常有价值。此外，项目持续更新中，计划加入 Golang、Kubernetes 等现代技术栈的知识点，进一步丰富其内容覆盖面。","2026-06-11 02:57:07","top_language"]