# toBeBetterJavaer **Repository Path**: mycls/toBeBetterJavaer ## Basic Information - **Project Name**: toBeBetterJavaer - **Description**: 一份通俗易懂、风趣幽默的Java学习指南,内容涵盖Java基础、Java并发编程、Java虚拟机、Java企业级开发、Java面试等核心知识点。学Java,就认准Java 程序员进阶之路😄 - **Primary Language**: Java - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: https://tobebetterjavaer.com - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 234 - **Created**: 2023-12-01 - **Last Updated**: 2023-12-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
>[二哥的编程星球](https://tobebetterjavaer.com/zhishixingqiu/)已经有 **1000 多名** 小伙伴加入了,如果你也需要一个良好的学习氛围,[戳链接](https://tobebetterjavaer.com/zhishixingqiu/)加入我们吧!这是一个「编程学习指南 + Java项目实战 + LeetCode刷题」的私密圈子,你可以阅读星球专栏、向二哥提问、帮你制定学习计划、跟着二哥一起做项目、刷力扣,冲冲冲。 # 为什么会有这个开源知识库 > 知识库取名 **toBeBetterJavaer**,即 **To Be Better Javaer**,意为「成为一名更好的 Java 程序员」,是自学 Java 以来所有原创文章和学习资料的大聚合。内容包括 Java 基础、Java 并发编程、Java 虚拟机、Java 企业级开发、Java 面试等核心知识点。据说每一个优秀的 Java 程序员都喜欢她,风趣幽默、通俗易懂。学 Java,就认准 Java 程序员进阶之路😄。 > > 知识库旨在为学习 Java 的小伙伴提供一系列: > - **优质的原创 Java 教程** > - **全面清晰的 Java 学习路线** > - **免费但靠谱的 Java 学习资料** > - **精选的 Java 岗求职面试指南** > - **Java 企业级开发所需的必备技术** > > 赠人玫瑰手有余香。知识库会持续保持**更新**,欢迎收藏品鉴! > > **转载须知** :以下所有文章如非文首说明为转载皆为我(沉默王二)的原创,转载在文首注明出处,如发现恶意抄袭/搬运,会动用法律武器维护自己的权益。让我们一起维护一个良好的技术创作环境! > > 推荐你通过在线阅读网站进行阅读,体验更好,速度更快! > > - [**Java程序员进阶之路在线阅读网站(新版,推荐👍)**](https://tobebetterjavaer.com/) > - [Java程序员进阶之路在线阅读](https://docsify.tobebetterjavaer.com) > - 👍推荐[免费下载1000本计算机经典书籍](https://github.com/itwanger/JavaBooks) # 知识库地图 > 知识库收录的核心内容就全在这里面了,大类分为 Java 核心、Java 企业级开发、数据库、计算机基础、求职面试、学习资源、程序人生,几乎你需要的这里都有。  # 学习路线 > 除了 Java 学习路线,还有 C语言、C++、Python、Go 语言、操作系统、前端、数据结构与算法、蓝桥杯、大数据、Android、MySQL、.NET等硬核学习路线,欢迎收藏品鉴! * [Java学习路线一条龙版(建议收藏🔥)](docs/xuexiluxian/java/yitiaolong.md) * [Java并发编程学习路线(建议收藏🔥)](docs/xuexiluxian/java/thread.md) * [Java虚拟机学习路线(建议收藏🔥)](docs/xuexiluxian/java/jvm.md) * [C语言学习路线(建议收藏🔥)](docs/xuexiluxian/c.md) * [C++学习路线(建议收藏🔥)](docs/xuexiluxian/ccc.md) * [Python学习路线(建议收藏🔥)](docs/xuexiluxian/python.md) * [Go语言学习路线(建议收藏🔥)](docs/xuexiluxian/go.md) * [操作系统学习路线(建议收藏🔥)](docs/xuexiluxian/os.md) * [前端学习路线(建议收藏🔥)](docs/xuexiluxian/qianduan.md) * [算法和数据结构学习路线(建议收藏🔥)](docs/xuexiluxian/algorithm.md) * [蓝桥杯学习路线(建议收藏🔥)](docs/xuexiluxian/lanqiaobei.md) * [大数据学习路线(建议收藏🔥)](docs/xuexiluxian/bigdata.md) * [Android 安卓学习路线(建议收藏🔥)](docs/xuexiluxian/android.md) * [MySQL 学习路线(建议收藏🔥)](docs/xuexiluxian/mysql.md) * [.NET 学习路线(建议收藏🔥)](docs/xuexiluxian/donet.md) # 面渣逆袭 > **面试前必读系列**!包括 Java 基础、Java 集合框架、Java 并发编程、Java 虚拟机、Spring、Redis、MyBatis、MySQL、操作系统、计算机网络、RocketMQ 等等。 - [面渣逆袭(Java 基础篇八股文面试题)必看👍](docs/sidebar/sanfene/javase.md) - [面渣逆袭(Java 集合框架篇八股文面试题)必看👍](docs/sidebar/sanfene/collection.md) - [面渣逆袭(Java 并发编程篇八股文面试题)必看👍](docs/sidebar/sanfene/javathread.md) - [面渣逆袭(Java 虚拟机篇八股文面试题)必看👍](docs/sidebar/sanfene/jvm.md) - [面渣逆袭(Spring八股文面试题)必看👍](docs/sidebar/sanfene/spring.md) - [面渣逆袭(Redis八股文面试题)必看👍](docs/sidebar/sanfene/redis.md) - [面渣逆袭(MyBatis八股文面试题)必看👍](docs/sidebar/sanfene/mybatis.md) - [面渣逆袭(MySQL八股文面试题)必看👍](docs/sidebar/sanfene/mysql.md) - [面渣逆袭(操作系统八股文面试题)必看👍](docs/sidebar/sanfene/os.md) - [面渣逆袭(计算机网络八股文面试题)必看👍](docs/sidebar/sanfene/network.md) - [面渣逆袭(RocketMQ八股文面试题)必看👍](docs/sidebar/sanfene/rocketmq.md) # Java核心 > **Java核心非常重要**!我将其分成了Java 基础篇(包括基础语法、面向对象、集合框架、异常处理、Java IO 等)、Java 并发篇和 Java 虚拟机篇。 ## Java概述 - [Java简介,什么是 Java?](docs/overview/what-is-java.md) - [Java发展简史](docs/overview/java-history.md) - [Java的特点,Java能做什么](docs/overview/java-can-do-what.md) - [安装Java开发工具包JDK](docs/overview/jdk-install-config.md) - [安装集成开发环境Intellij IDEA](docs/overview/IDEA-install-config.md) - [编写第一个Java程序:Hello World](docs/overview/hello-world.md) ## Java基础语法 - [Java中常用的48个关键字 & 2个保留字](docs/basic-extra-meal/48-keywords.md) - [Java命名规范,告别编码 5 分钟,命名 2 小时](docs/basic-extra-meal/java-naming.md) - [Java注释:单行、多行和文档注释](docs/basic-grammar/javadoc.md) - [Java 中的数据类型(8 种基本数据类型和引用数据类型)](docs/basic-grammar/basic-data-type.md) - [Java 数据类型转换(强制类型转换+自动类型转换)](docs/basic-grammar/type-cast.md) - [Java流程控制语句](docs/basic-grammar/flow-control.md) - [Java运算符](docs/basic-grammar/operator.md) ## 数组&字符串 - [浅入浅出Java数组](docs/array/array.md) - [如何优雅地打印Java数组?](docs/array/print.md) - [为什么String是不可变的?](docs/string/immutable.md) - [深入理解Java字符串常量池](docs/string/constant-pool.md) - [深入解析String.intern()方法](docs/string/intern.md) - [Java如何判断两个字符串是否相等?](docs/string/equals.md) - [最优雅的Java字符串拼接是哪种方式?](docs/string/join.md) - [如何在Java中优雅地分割String字符串?](docs/string/split.md) ## Java面向对象编程 - [怎么理解Java中的类和对象?](docs/oo/object-class.md) - [Java 包,优雅地解决类名冲突](docs/oo/package.md) - [Java中的变量:局部变量、成员变量、静态变量、常量](docs/oo/var.md) - [Java中的方法:实例方法、静态方法、抽象方法](docs/oo/method.md) - [Java中的构造方法:对象创建时的必经之路](docs/oo/construct.md) - [聊一聊Java中的访问权限修饰符](docs/oo/access-control.md) - [Java中的代码初始化块:对成员变量进行更复杂的赋值](docs/oo/code-init.md) - [Java抽象类,看这一篇就够了,豁然开朗](docs/oo/abstract.md) - [Java接口,看这一篇就够了,简单易懂](docs/oo/interface.md) - [Java 抽象类和接口的区别,看这一篇就够了](docs/oo/abstract-vs-interface.md) - [Java内部类详解:成员内部类、局部内部类、匿名内部类、静态内部类](docs/oo/inner-class.md) - [Java中this和super的用法总结](docs/oo/this-super.md) - [Java 方法重写 Override 和方法重载 Overload 的区别,一下子就明白了](docs/basic-extra-meal/override-overload.md) - [一文彻底搞懂 Java static 关键字:静态变量、静态方法、静态代码块、静态内部类](docs/oo/static.md) - [一文彻底搞懂 Java final 关键字](docs/oo/final.md) - [这次彻底搞清楚了 Java 的三大特征之一:封装](docs/oo/encapsulation.md) - [一万字彻底搞懂 Java 继承(三大特征之一)](docs/oo/extends-bigsai.md) - [几句话,直观解释清楚 Java 多态(三大特征之一)](docs/oo/polymorphism.md) ## 集合框架(容器) - [Java 集合框架(容器)体系结构](docs/collection/gailan.md) - [衡量Java集合框架执行效率的重要标准:时间复杂度](docs/collection/time-complexity.md) - [Java ArrayList详解(附源码分析)](docs/collection/arraylist.md) - [Java LinkedList详解(附源码分析)](docs/collection/linkedlist.md) - [面试官问我Java中ArrayList和LinkedList的区别,我和他扯了半小时](docs/collection/list-war-2.md) - [海康威视一面:Java中Iterator和Iterable有什么区别?](docs/collection/iterator-iterable.md) - [为什么阿里巴巴强制不要在foreach里执行删除操作?还不是因为fail-fast](docs/collection/fail-fast.md) - [Java HashMap详解(附源码分析)](docs/collection/hashmap.md) - [Java LinkedHashMap详解(附源码分析)](docs/collection/linkedhashmap.md) - [Java TreeMap详解(附源码分析)](docs/collection/treemap.md) - [详解 Java 中的堆和队列(Stack and Queue 附源码分析)](docs/collection/arraydeque.md) - [详解 Java 中的优先级队列(PriorityQueue 附源码分析)](docs/collection/PriorityQueue.md) - [Java WeakHashMap详解(附源码分析)](docs/collection/WeakHashMap.md) ## Java IO - [看完这篇,Java IO 不再混乱!](docs/io/shangtou.md) - [详解 File、Path、Paths、Files 四个类,Java操作文件不再难](docs/io/file-path.md) - [文件的世界,一切皆字节流(Stream)](docs/io/stream.md) - [Java字符流Reader和Writer的故事](docs/io/reader-writer.md) - [Java缓冲流(Buffered):读写速度有了质的飞升](docs/io/buffer.md) - [Java转换流,解决字符与字节之间编码、解码的乱码问题](docs/io/char-byte.md) - [Java序列化流,字节和对象之间的序列化和反序列化](docs/io/serialize.md) - [Java Serializable:明明就一个空的接口嘛](docs/io/Serializbale.md) - [招银面试官:说说Java transient关键字](docs/io/transient.md) - [Java打印流:PrintStream & PrintWriter](docs/io/print.md) ## 异常处理 - [一文彻底搞懂Java异常处理,YYDS](docs/exception/gailan.md) - [深入理解 Java 中的 try-with-resouces 语法糖](docs/exception/try-with-resouces.md) - [Java异常处理的20个最佳实践](docs/exception/shijian.md) - [Java空指针NullPointerException的传说](docs/exception/npe.md) ## 常用工具类 - [Java Arrays:专为数组而生的工具类](docs/common-tool/arrays.md) - [Java Collections:专为集合框架而生的工具类](docs/common-tool/collections.md) - [Hutool:国产良心工具包,让你的Java变得更甜](docs/common-tool/hutool.md) - [Guava:Google开源的工具库,太强大了](docs/common-tool/guava.md) - [这10个工具类,让我的开发效率提升了50%](docs/common-tool/utils.md) ## Java新特性 - [Java 8 Stream流详细用法](docs/java8/stream.md) - [Java 8 Optional最佳指南](docs/java8/optional.md) - [深入浅出Java 8 Lambda表达式](docs/java8/Lambda.md) ## Java重要知识点 - [彻底弄懂Java中的Unicode和UTF-8编码](docs/basic-extra-meal/java-unicode.md) - [Java中new Integer与Integer.valueOf的区别](docs/basic-extra-meal/int-cache.md) - [深入剖析Java中的拆箱和装箱](docs/basic-extra-meal/box.md) - [一文彻底讲明白的Java中的浅拷贝与深拷贝](docs/basic-extra-meal/deep-copy.md) - [深入理解Java中的hashCode方法](docs/basic-extra-meal/hashcode.md) - [为什么重写equals方法的时候必须要重写hashCode方法?](docs/basic-extra-meal/equals-hashcode.md) - [Java重写(Overriding)时应当遵守的11条规则](docs/basic-extra-meal/Overriding.md) - [Java到底是值传递还是引用传递?](docs/basic-extra-meal/pass-by-value.md) - [详解Java中Comparable和Comparator接口的区别](docs/basic-extra-meal/comparable-omparator.md) - [jdk9为什么要将String的底层实现由char数组改成了byte数组?](docs/basic-extra-meal/jdk9-char-byte-string.md) - [为什么JDK源码中,无限循环大多使用for(;;)而不是while(true)?](docs/basic-extra-meal/jdk-while-for-wuxian-xunhuan.md) - [Java 中,先有Class还是先有Object?](docs/basic-extra-meal/class-object.md) - [详解Java中instanceof关键字的用法](docs/basic-extra-meal/instanceof.md) - [instanceof关键字是如何实现的?](docs/basic-extra-meal/instanceof-jvm.md) - [深入理解Java中的不可变对象](docs/basic-extra-meal/immutable.md) - [Java中可变参数的使用](docs/basic-extra-meal/varables.md) - [深入理解Java中的泛型](docs/basic-extra-meal/generic.md) - [Java不能实现真正泛型的原因是什么?](docs/basic-extra-meal/true-generic.md) - [深入理解Java中的注解](docs/basic-extra-meal/annotation.md) - [新来个技术总监,彻底把 Java 枚举(enum)讲清楚了](docs/basic-extra-meal/enum.md) - [大白话说清楚Java反射:入门、使用、原理](docs/basic-extra-meal/fanshe.md) ## Java网络编程 - [Java Socket:飞鸽传书的网络套接字](docs/socket/socket.md) - [牛逼,用Java Socket手撸了一个HTTP服务器](docs/socket/http.md) ## Java NIO - [为什么我们要使用 Java NIO?](docs/nio/why.md) - [Java NIO 快速入门(buffer缓冲区、Channel管道、Selector选择器)](docs/nio/rumen.md) - [一文彻底理解Java IO模型(阻塞IO非阻塞IO/IO多路复用)](docs/nio/moxing.md) - [使用Java NIO完成网络通信](docs/nio/network-connect.md) - [如何给女朋友解释什么是 BIO、NIO 和 AIO?](docs/nio/BIONIOAIO.md) ## Java并发编程 - [室友打了一把王者就学会了创建Java线程的3种方式](docs/thread/wangzhe-thread.md) - [Java线程的6种状态及切换(透彻讲解)](docs/thread/thread-state-and-method.md) - [线程组是什么?线程优先级如何设置?](docs/thread/thread-group-and-thread-priority.md) - [进程与线程的区别是什么?](docs/thread/why-need-thread.md) - [并发编程带来了哪些问题?](docs/thread/thread-bring-some-problem.md) - [全面理解Java的内存模型(JMM)](docs/thread/jmm.md) - [Java并发编程volatile关键字解析](docs/thread/volatile.md) - [Java中的synchronized锁的到底是什么?](docs/thread/synchronized.md) - [Java实现CAS的原理](docs/thread/cas.md) - [Java并发AQS详解](docs/thread/aqs.md) - [大致了解下Java的锁接口和锁](docs/thread/lock.md) - [公司空降一个美团大佬,彻底把Java中的锁”讲清楚了](docs/thread/suo.md) - [Java 15 终于把难搞的偏向锁移除了](docs/thread/pianxiangsuo.md) - [深入理解Java并发重入锁ReentrantLock](docs/thread/reentrantLock.md) - [深入理解Java并发读写锁ReentrantReadWriteLock](docs/thread/ReentrantReadWriteLock.md) - [深入理解Java并发线程协作类Condition](docs/thread/condition.md) - [深入理解Java并发线程线程阻塞唤醒类LockSupport](docs/thread/LockSupport.md) - [简单聊聊Java的并发集合容器](docs/thread/map.md) - [吊打Java并发面试官之ConcurrentHashMap](docs/thread/ConcurrentHashMap.md) - [吊打Java并发面试官之ConcurrentLinkedQueue](docs/thread/ConcurrentLinkedQueue.md) - [吊打Java并发面试官之CopyOnWriteArrayList](docs/thread/CopyOnWriteArrayList.md) - [吊打Java并发面试官之ThreadLocal](docs/thread/ThreadLocal.md) - [吊打Java并发面试官之BlockingQueue](docs/thread/BlockingQueue.md) - [面试必备:Java线程池](docs/thread/pool.md) - [为什么阿里巴巴要禁用Executors创建线程池?](docs/thread/ali-executors.md) - [深入剖析Java计划任务ScheduledThreadPoolExecutor](docs/thread/ScheduledThreadPoolExecutor.md) - [Java atomic包中的原子操作类总结](docs/thread/atomic.md) - [Java并发编程通信工具类CountDownLatch等一网打尽](docs/thread/CountDownLatch.md) - [深入理解Java并发编程之Fork/Join框架](docs/thread/fork-join.md) - [从根上理解生产者-消费者模式](docs/thread/shengchanzhe-xiaofeizhe.md) ## Java虚拟机 - [JVM到底是什么?](docs/jvm/what-is-jvm.md) - [JVM到底是如何运行Java代码的?](docs/jvm/how-run-java-code.md) - [我竟然不再抗拒Java的类加载机制了](docs/jvm/class-load.md) - [详解Java的类文件(class文件)结构](docs/jvm/class-file-jiegou.md) - [从javap的角度轻松看懂字节码](docs/jvm/bytecode.md) - [JVM字节码指令详解](docs/jvm/zijiema-zhiling.md) - [虚拟机是如何执行字节码指令的?](docs/jvm/how-jvm-run-zijiema-zhiling.md) - [HSDB(Hotspot Debugger)从入门到实战](docs/jvm/hsdb.md) - [史上最通俗易懂的ASM教程](docs/jvm/asm.md) - [自己编译JDK](docs/jvm/compile-jdk.md) - [深入理解JVM的内存结构](docs/jvm/neicun-jiegou.md) - [Java 创建的对象到底放在哪?](docs/jvm/whereis-the-object.md) - [咱们从头到尾说一次Java垃圾回收](docs/jvm/gc.md) - [图解Java的垃圾回收机制](docs/jvm/tujie-gc.md) - [Java中9种常见的CMS GC问题分析与解决](docs/jvm/meituan-9-gc.md) - [Java问题诊断和排查工具(查看JVM参数、内存使用情况及分析)](docs/jvm/problem-tools.md) - [Java即时编译(JIT)器原理解析及实践](docs/jvm/jit.md) - [一次内存溢出排查优化实战](docs/jvm/oom.md) - [一次生产CPU 100% 排查优化实践](docs/jvm/cpu-percent-100.md) - [JVM 核心知识点总结](docs/jvm/zongjie.md) # Java企业级开发 > - **到底能不能成为一名合格的 Java 程序员,从理论走向实战?Java 企业级开发这部分内容就是一个分水岭**! > - 纸上得来终觉浅,须知此事要躬行。 ## 开发/构建工具 > 工欲善其事必先利其器,这句话大家都耳熟能详了,熟练使用开发/构建工具可以让我们极大提升开发效率,解放生产力。 - [5分钟带你深入浅出搞懂Nginx](docs/nginx/nginx.md) ### IDEA > 集成开发环境,Java 党主要就是 Intellij IDEA 了,号称史上最强大的 Java 开发工具,没有之一。 - [分享 4 个阅读源码必备的 IDEA 调试技巧](docs/ide/4-debug-skill.md) - [分享 1 个可以在 IDEA 里下五子棋的插件](docs/ide/xechat.md) - [分享 10 个可以一站式开发的 IDEA 神级插件](docs/ide/shenji-chajian-10.md) ### Maven > Maven 是目前比较流行的一个项目构建工具,基于 pom 坐标来帮助我们管理第三方依赖,以及项目打包。 - [终于把项目构建神器Maven捋清楚了~](docs/maven/maven.md) ### Git > Git 是一个分布式版本控制系统,缔造者是大名鼎鼎的林纳斯·托瓦茲 (Linus Torvalds),Git 最初的目的是为了能更好的管理 Linux 内核源码。如今,Git 已经成为全球软件开发者的标配。如果说 Linux 项目促成了开源软件的成功并改写了软件行业的格局,那么 Git 则是改变了全世界开发者的工作方式和写作方式。 - [1小时彻底掌握Git,(可能是)史上最简单明了的 Git 教程](docs/git/git-qiyuan.md) ## Spring - [Spring AOP扫盲](docs/springboot/aop-log.md) - [Spring IoC扫盲](docs/springboot/ioc.md) ## SpringBoot - [一分钟快速搭建Spring Boot项目](docs/springboot/initializr.md) - [Spring Boot 整合 MySQL 和 Druid](docs/springboot/mysql-druid.md) - [Spring Boot 整合 JPA](docs/springboot/jpa.md) - [Spring Boot 整合 Thymeleaf 模板引擎](docs/springboot/thymeleaf.md) - [Spring Boot 如何开启事务支持?](docs/springboot/transaction.md) - [Spring Boot 中使用过滤器、拦截器、监听器](docs/springboot/Filter-Interceptor-Listener.md) - [Spring Boot 整合 Redis 实现缓存](docs/redis/redis-springboot.md) - [Spring Boot 整合 Logback 定制日志框架](docs/springboot/logback.md) - [Spring Boot 整合 Swagger-UI 实现在线API文档](docs/springboot/swagger.md) - [Spring Boot 整合 Knife4j,美化强化丑陋的Swagger](docs/gongju/knife4j.md) - [Spring Boot 整合 Spring Task 实现定时任务](docs/springboot/springtask.md) - [Spring Boot 整合 MyBatis-Plus AutoGenerator 生成编程喵项目骨架代码](docs/kaiyuan/auto-generator.md) - [Spring Boot 整合Quartz实现编程喵定时发布文章](docs/springboot/quartz.md) - [Spring Boot 整合 MyBatis](docs/springboot/mybatis.md) - [一键部署 Spring Boot 到远程 Docker 容器](docs/springboot/docker.md) - [如何在本地(macOS环境)跑起来编程喵(Spring Boot+Vue)项目源码?](docs/springboot/macos-codingmore-run.md) - [如何在本地(Windows环境)跑起来编程喵(Spring Boot+Vue)项目源码?](docs/springboot/windows-codingmore-run.md) - [编程喵🐱实战项目如何在云服务器上跑起来?](docs/springboot/linux-codingmore-run.md) - [SpringBoot中处理校验逻辑的两种方式:Hibernate Validator+全局异常处理](docs/springboot/validator.md) ## Netty - [超详细Netty入门,看这篇就够了!](docs/netty/rumen.md) ## 辅助工具 - [Chocolatey:一款GitHub星标8.2k+的Windows命令行软件管理器,好用到爆!](docs/gongju/choco.md) - [Homebrew,GitHub 星标 32.5k+的 macOS 命令行软件管理神器,功能真心强大!](docs/gongju/brew.md) - [Tabby:一款逼格更高的开源终端工具,GitHub 星标 21.4k](docs/gongju/tabby.md) - [Warp:号称下一代终端神器,GitHub星标2.8k+,用完爱不释手](docs/gongju/warp.md) - [WindTerm:新一代开源免费的终端工具,GitHub星标6.6k+,太酷了!](docs/gongju/windterm.md) - [chiner:干掉 PowerDesigner,国人开源的数据库设计工具,界面漂亮,功能强大](docs/gongju/chiner.md) - [DBeaver:干掉付费的 Navicat,操作所有数据库就靠它了!](docs/gongju/DBeaver.md) ## 开源轮子 - [Forest:一款极简的声明式HTTP调用API框架](docs/gongju/forest.md) - [Junit:一个开源的Java单元测试框架](docs/gongju/junit.md) - [fastjson:阿里巴巴开源的JSON解析库](docs/gongju/fastjson.md) - [Gson:Google开源的JSON解析库](docs/gongju/gson.md) - [Jackson:GitHub上star数最多的JSON解析库](docs/gongju/jackson.md) - [Log4j:Java日志框架的鼻祖](docs/gongju/log4j.md) - [Log4j 2:Apache维护的一款高性能日志记录工具](docs/gongju/log4j2.md) - [Logback:Spring Boot内置的日志处理框架](docs/gongju/logback.md) - [SLF4J:阿里巴巴强制使用的日志门面担当](docs/gongju/slf4j.md) ## 分布式 - [全文搜索引擎Elasticsearch入门教程](docs/elasticsearch/rumen.md) - [可能是把ZooKeeper概念讲的最清楚的一篇文章](docs/zookeeper/jibenjieshao.md) - [微服务网关:从对比到选型,由理论到实践](docs/microservice/api-wangguan.md) ## 消息队列 - [RabbitMQ入门教程(概念、应用场景、安装、使用)](docs/mq/rabbitmq-rumen.md) - [怎么确保消息100%不丢失?](docs/mq/100-budiushi.md) - [Kafka核心知识点大梳理](docs/mq/kafka.md) # 数据库 > - **简而言之,就是按照数据结构来组织、存储和管理数据的仓库**。几乎所有的 Java 后端开发都要学习数据库这块的知识,包括关系型数据库 MySQL,缓存中间件 Redis,非关系型数据库 MongoDB 等。 ## MySQL - [如何保障MySQL和Redis的数据一致性?](docs/mysql/redis-shuju-yizhixing.md) ## Redis - [Redis入门(适合新手)](docs/redis/rumen.md) - [聊聊缓存雪崩、穿透、击穿](docs/redis/xuebeng-chuantou-jichuan.md) ## MongoDB - [MongoDB最基础入门教程](docs/mongodb/rumen.md) # 计算机基础 > - **计算机基础包括操作系统、计算机网络、计算机组成原理、数据结构与算法等**。对于任何一名想要走得更远的 Java 后端开发来说,都是必须要花时间和精力去夯实的。 > - 万丈高露平地起,勿在浮沙筑高台。 - [操作系统核心知识点大梳理](docs/cs/os.md) - [计算机网络核心知识点大梳理](docs/cs/wangluo.md) # 求职面试 > - **学习了那么多 Java 知识,耗费了无数的脑细胞,熬掉了无数根秀发,为的是什么?当然是谋取一份心仪的 offer 了**。那八股文、面试题、城市选择、优质面经又怎能少得了呢? > - 千淘万漉虽辛苦,吹尽狂沙始到金。 ## 面试题&八股文 - [34 道 Java 精选面试题👍](docs/interview/java-34.md) - [13 道 Java HashMap 精选面试题👍](docs/interview/java-hashmap-13.md) - [12 道 Redis 精选面试题👍](docs/interview/redis-12.md) - [40 道 Nginx 精选面试题👍](docs/interview/nginx-40.md) - [60 道 MySQL 精选面试题👍](docs/interview/mysql-60.md) - [17 道 Dubbo 精选面试题👍](docs/interview/dubbo-17.md) - [Java 基础背诵版八股文必看🍉](docs/interview/java-basic-baguwen.md) - [Java 并发编程背诵版八股文必看🍉](docs/interview/java-thread-baguwen.md) - [Java 虚拟机背诵版八股文必看🍉](docs/interview/java-jvm-baguwen.md) - [携程面试官👤:大文件上传时如何做到秒传?](docs/interview/mianshiguan-bigfile-miaochuan.md) - [阿里面试官👤:为什么要分库分表?](docs/interview/mianshiguan-fenkufenbiao.md) - [淘宝面试官👤:优惠券系统该如何设计?](docs/interview/mianshiguan-youhuiquan.md) ## 优质面经 - [硕士读者春招斩获深圳腾讯PCG和杭州阿里云 offer✌️](docs/mianjing/shanganaliyun.md) - [本科读者小公司一年工作经验社招拿下阿里美团头条京东滴滴等 offer✌️](docs/mianjing/shezynmjfxhelmtttjddd.md) - [非科班读者,用一年时间社招拿下阿里 Offer✌️](docs/mianjing/xuelybdzheloffer.md) - [二本读者社招两年半10家公司28轮面试面经✌️](docs/mianjing/huanxgzl.md) - [双非一本秋招收获腾讯ieg、百度、字节等6家大厂offer✌️](docs/mianjing/quzjlsspdx.md) - [双非学弟收割阿里、字节、B站校招 offer,附大学四年硬核经验总结✌️](docs/mianjing/zheisnylzldhzd.md) - [深漂 6 年了,回西安的一波面经总结✌️](docs/mianjing/chengxyspnhxagzl.md) ## 面试准备 - [面试常见词汇扫盲+大厂面试特点分享💪](docs/nice-article/weixin/miansmtgl.md) - [有无实习/暑期实习 offer 如何准备秋招?💪](docs/nice-article/weixin/zijxjjdyfqzgl.md) - [简历如何优化,简历如何投递,面试如何准备?💪](docs/nice-article/weixin/luoczbmsddyb.md) - [校招时间节点、简历编写、笔试、HR面、实习等注意事项💪](docs/nice-article/weixin/youdxzhhmjzlycfx.md) ## 城市选择 - [北京都有哪些值得加入的IT互联网公司?](docs/cityselect/beijing.md) - [广州都有哪些值得加入的IT互联网公司?](docs/cityselect/guangzhou.md) - [深圳都有哪些值得加入的IT互联网公司?](docs/cityselect/shenzhen.md) - [西安都有哪些值得加入的IT互联网公司?](docs/cityselect/xian.md) - [青岛都有哪些值得加入的IT互联网公司?](docs/cityselect/qingdao.md) - [郑州都有哪些值得加入的IT互联网公司?](docs/cityselect/zhengzhou.md) - [苏州都有哪些值得加入的IT互联网公司?](docs/cityselect/suzhou.md) - [南京都有哪些值得加入的IT互联网公司?](docs/cityselect/nanjing.md) - [杭州都有哪些值得加入的IT互联网公司?](docs/cityselect/hangzhou.md) - [成都都有哪些值得加入的IT互联网公司?](docs/cityselect/chengdu.md) - [济南都有哪些值得加入的IT互联网公司?](docs/cityselect/jinan.md) # 学习资源 > - **不知道学什么?不知道该怎么学?找不到优质的学习资源**?这些问题在这里统统都可以找到答案。 > - 我会把自己十多年的编程经验和学习资源毫不保留的分享出来。 ## PDF下载 - [👏下载→超1000本计算机经典书籍分享](docs/pdf/java.md) - [👏下载→2022年全网最全关于程序员学习和找工作的PDF资源](docs/pdf/programmer-111.md) - [👏下载→深入浅出Java多线程PDF](docs/pdf/java-concurrent.md) - [👏下载→GitHub星标115k+的Java教程](docs/pdf/github-java-jiaocheng-115-star.md) - [👏下载→重学Java设计模式PDF](docs/pdf/shejimoshi.md) - [👏下载→Java版LeetCode刷题笔记](docs/pdf/java-leetcode.md) - [👏下载→阿里巴巴Java开发手册](docs/pdf/ali-java-shouce.md) - [👏下载→阮一峰C语言入门教程](docs/pdf/yuanyifeng-c-language.md) - [👏下载→BAT大佬的刷题笔记](docs/pdf/bat-shuati.md) - [👏下载→给操作系统捋条线PDF](docs/pdf/os.md) - [👏下载→豆瓣9.1分的Pro Git中文版](docs/pdf/progit.md) - [👏下载→简历模板](docs/pdf/jianli.md) ## 学习建议 - [计算机专业该如何自学编程,看哪些书籍哪些视频哪些教程?](docs/xuexijianyi/LearnCS-ByYourself.md) - [如何阅读《深入理解计算机系统》这本书?](docs/xuexijianyi/read-csapp.md) - [电子信息工程最好的出路的是什么?](docs/xuexijianyi/electron-information-engineering.md) - [如何填报计算机大类高考填志愿,计科、人工智能、软工、大数据、物联网、网络工程该怎么选?](docs/xuexijianyi/gaokao-zhiyuan-cs.md) - [测试开发工程师必读经典书籍有哪些?](docs/xuexijianyi/test-programmer-read-books.md) - [校招 Java 后端开发应该掌握到什么程度?](docs/xuexijianyi/xiaozhao-java-should-master.md) - [大裁员下,程序员如何做“副业”?](docs/xuexijianyi/chengxuyuan-fuye.md) - [如何在繁重的工作中持续成长?](docs/xuexijianyi/ruhzfzdgzzcxcz.md) - [如何获得高并发的经验?](docs/xuexijianyi/gaobingfa-jingyan-hsmcomputer.md) - [怎么跟 HR 谈薪资?](docs/xuexijianyi/hr-xinzi.md) - [程序员 35 岁危机,如何破局?](docs/xuexijianyi/35-weiji.md) - [不到 20 人的 IT 公司该去吗?](docs/xuexijianyi/20ren-it-quma.md) - [本科生如何才能进入腾讯、阿里等一流的互联网公司?](docs/xuexijianyi/benkesheng-ali-tengxun.md) - [计算机考研 408 统考该如何准备?](docs/xuexijianyi/408.md) # 知识库搭建 > 从购买阿里云服务器+域名购买+域名备案+HTTP 升级到 HTTPS,全方面记录《Java 程序员进阶之路》知识库的诞生和改进过程,涉及到 docsify、Git、Linux 命令、GitHub 仓库等实用知识点。 - [购买云服务器](docs/szjy/buy-cloud-server.md) - [安装宝塔面板](docs/szjy/install-baota-mianban.md) - [购买域名&域名解析](docs/szjy/buy-domain.md) - [备案域名](docs/szjy/record-domain.md) - [给域名配置HTTPS证书](docs/szjy/https-domain.md) - [使用docsify+Git+GitHub+码云+阿里云服务器搭建知识库网站](docs/szjy/tobebetterjavaer-wangzhan-shangxian.md) # 联系作者 >- 作者是一名普通普通普通普通三连的 Java 后端开发者,热爱学习,热爱分享 >- 参加工作以后越来越理解交流和分享的重要性,在不停地汲取营养的同时,也希望帮助到更多的小伙伴们 >- Java 程序员进阶之路,不仅是作者自学 Java 以来所有的原创文章和学习资料的大聚合,更是作者向这个世界传播知识的一个窗口。 ## 心路历程 - [走近作者:个人介绍 Q&A](docs/about-the-author/readme.md) - [我的第一个,10 万(B站视频播放)](docs/about-the-author/bzhan-10wan.md) - [我的第一个,一千万!知乎阅读](docs/about-the-author/zhihu-1000wan.md) - [我的第二个,一千万!CSDN阅读](docs/about-the-author/csdn-1000wan.md) ## 联系方式 ### 原创公众号 最近整理了一份牛逼的学习资料,包括但不限于Java基础部分(JVM、Java集合框架、多线程),还囊括了 **数据库、计算机网络、算法与数据结构、设计模式、框架类Spring、Netty、微服务(Dubbo,消息队列) 网关** 等等等等……详情戳:[可以说是2022年全网最全的学习和找工作的PDF资源了](https://tobebetterjavaer.com/pdf/programmer-111.html) 关注二哥的原创公众号 **沉默王二**,回复**111** 即可免费领取。  ### star趋势图 [](https://star-history.com/#itwanger/toBeBetterJavaer&Date) ### 友情链接 - [Hippo4J](https://github.com/acmenlt/dynamic-threadpool),🔥 强大的动态线程池,附带监控报警功能(没有依赖中间件),完全遵循阿里巴巴编码规范。 - [JavaGuide](https://github.com/Snailclimb/JavaGuide),「Java学习+面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识。准备 Java 面试,首选 JavaGuide! ### 捐赠鼓励 开源不易,如果《Java 程序员进阶之路》对你有些帮助,可以请作者喝杯咖啡,算是对开源做出的一点点鼓励吧!