java开发学习资料集合

针对java的学习,不同阶段采用的方式是不一样的。本文把java的学习分为入门、实战、进阶三个阶段。下面分开来说

  • 技术社区

1、 CSDN

CSDN在线学习平台,集合了各领域资深技术专家.
覆盖领域:人工智能、大数据、区块链、数据库、大学课程、认证考试、系统/网络、游戏开发、Web开发、移动开发

这个是我使用最早的技术网站,里面有很多类型的技术文章,还有很多技术代码,比如你是一个初级程序员,遇到问题在这里查询就能很快了解,还能下载一些源码来看,目前CSDN还支持付费文章和视频,这种付费的质量更高。

2、开源中国

OSCHINA 成立于2008年8月,是目前国内最大的开源技术社区之一,拥有超过300万会员,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。2013年,OSCHINA 建立大型综合性的云开发平台-码云,为中国广大开发者提供团队协作、源码托管、代码质量分析、代码评审、测试、代码演示平台等功能。

3、Stack Overflow

StackOverflow是最大、最值得信赖的在线社区,供开发人员学习、分享编程知识、建立职业生涯。
Stack Overflow 可以说是解决问题的杀手锏,我一般遇到一些疑难问题会到这里查找。

4,掘金

旨在建立一个服务开发者的生态系统,在这个生态系统中,我们将品牌、流量、变现能力赋予开发者,帮助开发者创造出影响世界的新技术

掘金并不是很早的技术网站,但是却发展很快,现在很多技术大牛都在这里更新技术文章,很多术干活都能在这里查看到。​

、入门阶段

入门阶段的目标是学会java的基本语法和知识,能够解决一些简单的问题。这个阶段不建议看书学习,效率太慢。这个阶段不追求知识广度,只要求能够快速上手就行。建议直接找一些介绍java的基础知识的视频课程来看。推荐一个比较经典的课程。

1、[体系]java开发工程师从零到精通全体系课程

2、[入门精通] java全体系进修班全套课程

、实战阶段

这个阶段主要是要增加自己的知识广度,这个阶段就要多看书多做项目,理论和实践相结合,提升自己的理论水平和实战经验。

关于书籍方面,推荐如下基本

1、Java核心技术·卷I(豆瓣评分9.9)

本书用数百个实际的工程案例,全面系统地讲解了Java语言的核心概念、语法、 重要特性、 开发方法。着力让读者在充分理解Java语言和Java类库的基础上,灵活应用Java提供的高级特性,具体包括面向对象程序设计、反射与代理、接口与内部类、异常处理、泛型程序设计、集合框架、事件监听器模型、图形用户界面设计和并发。

2、Java设计模式(豆瓣评分9.5)

本书使用Java语言详细讲解常用的软件设计模式,该书结合大量项目实例对每一个设计模式进行全面、细致的讲解。全书结构合理、条理清晰、内容丰富,且在每一章后面都配有一定数量的习题。

3、Java编程的逻辑(豆瓣评分9.0)

Java专家撰写,力求透彻讲解每个知识点,逐步建立编程知识图谱。本书以Java语言为例,由基础概念入手,到背后实现原理与逻辑,再到应用实践,融会贯通。

4、Java并发编程实战(豆瓣评分9.0)

本书深入浅出地介绍了Java线程和并发,是一本完美的Java并发参考手册。该书介绍了如何使用类库提供的基本并发构建块,用于避免并发危险、构造线程安全的类及验证线程安全的规则,如何将小的线程安全类组合成更大的线程安全类,如何利用线程来提高并发应用程序的吞吐量,如何识别可并行执行的任务,如何提高单线程子系统的响应性,如何确保并发程序执行预期任务,如何提高并发代码的性能和可伸缩性等内容,最后介绍了一些高级主题,如显式锁、原子变量、非阻塞算法以及如何开发自定义的同步工具类。

关于教学课程方面的推荐

1、Java物联网企业级项目 亿可控(超完备功能 打造物联网设备监控)

2、Java在线支付实战微信支付

3、基于SpringCloud+Kubernetes 微服务的容器化持续交付实战

4、SpringCloud+Vertx+Disruptor 金融业撮合交易系统实战

5、基于SpringCloud+Kubernetes 微服务的容器化持续交付实战

6、Java高级SpringMVC框架+协同办公系统OA项目教程 

这几个视频课程都是关于项目实战方面的,没什么好介绍的,跟着课程把里面的项目实战都实践一遍,对提升编程技能很有帮助。

关于项目方面的推荐

1、Snailclimb/JavaGuide

这项目是比较经典的java学习项目,涵盖大部分Java程序员所需要掌握的核心知识。

2、doocs/advanced-java

互联网 Java 工程师进阶知识完全扫盲:涵盖高并发、分布式、高可用、微服务等领域知识。

3、iluwatar/java-design-patterns

该项目包含了大量的涉及模式,设计模式对一个程序员或者架构师的重要性不言而喻,无论是架构设计,日常编码,代码可读性,还是为了面试。设计模式都是Java程序员必须掌握的东西。

实战方面博客推荐

1Spring的Controller是单例还是多例?怎么保证并发的安全

2spring中那些让你爱不释手的代码技巧

368篇干货,手把手教你通关 Spring Security!

4Spring 注解 @Qualifier 详细解析

5Spring思维导图,让spring不再难懂

6精通Spring?请吃我一狗腿!

7Spring框架整理

8硬核推荐15个最火的Spring实战开源项目!总有一款适合你!

9图解Spring解决循环依赖♻️

10可能是最漂亮的Spring事务管理详解

11彻底搞明白Spring中的自动装配和Autowired

12Spring IOC知识点一网打尽!

13SpringMVC 单文件上传与多文件上传

14一个面试题引起的SpringBoot启动解析

15Spring容器启动流程(源码解读)

16Spring容器IOC初始化过程---今天终于进行总结了

17摊牌了!我要手写一个“Spring Boot”

18手码两万余字,SpringMVC 包教包会

19初探SpringMVC,走进SpringMVC的世界

20springmvc工作原理及源码分析

21Spring Boot 整合 Shiro ,两种方式全总结!

22. Spring+SpringMVC+MyBatis整合

23还搞不清Spring 与 Spring MVC 容器之间的关系?

24深入分析Spring 与 Spring MVC容器

25Mybatis 的使用(集成Spring、SpringBoot)

26Nice!终于有人把SpringMVC讲明白了

27SpringMVC源码分析系列(精简)

28深入浅出MyBatis:MyBatis解析和运行原理

29SSM三大框架整合详细总结

30聊聊MyBatis缓存机制

31MyBatis从前世到今生一网打尽(全网最全,建议收藏)

32备战金三银四,Mybatis核心原理必不可少

33Mybatis常见面试题

34Spring Boot学习笔记(超详细)

35几百行代码写个Mybatis,原理搞的透透的!

36超详细!4小时开发一个SpringBoot+vue前后端分离博客项目!!

37Spring MVC 启动过程源码分析

3830分钟入门MyBatis

39SpringBoot 封装自己的Starter

40Spring Boot集成MyBatis实现通用Mapper

41MyBatis 框架基本使用及深入理解

4213 个最火的 SpringBoot 实战开源项目推荐!总有一个适合你!

、进阶阶段

进阶阶段主要就是加深自己的知识深度,不仅要强化自己编程高阶技能,比如性能优化、项目选型架构等技能,更要提升自己的编程理论水品。这个阶段更多的就是要追求看书和学习一些比较难度较高的课程和项目。

关于书籍的推荐

1、深入理解Java虚拟机(豆瓣评分9.4)

本书是一部从工作原理和工程实践两个维度深入剖析JVM的著作,是计算机领域公认的经典,是进阶必备的书籍。

2、On Java 中文版 进阶卷(豆瓣评分9.0)

本书内容主要是对《On Java 中文版 基础卷》的拓展延伸,重点讲解Java的高级特性、并发、设计模式等相关进阶知识,对一些和开发密切相关的底层操作(如I/O系统、底层并发、数据压缩等)进行深入探讨,同时针对基础卷的重点章节进行了补充说明(如第3章增补了一些关于集合的高级特性)。在附录中,作者给出了67条关于低级程序设计和编写代码的建议,并分享了自己成为程序员的一些经验之谈。

3、Effective java 中文版(豆瓣评分9.1)

本书介绍了在Java编程中78条极具实用价值的经验规则,这些经验规则涵盖了大多数开发人员每天所面临的问题的解决方案。通过对Java平台设计专家所使用的技术的全面描述,揭示了应该做什么,不应该做什么才能产生清晰、健壮和高效的代码。

关于课程的推荐

  1. Java性能调优实战应用场景优化

2java架构师训练营

3Java开发企业级比肩淘宝秒杀技术架构设计的黑马秒杀系统

4、大厂JUC并发编程与源码分析

5java架构师课程服务器高性能集群架构与数据库优化配置

6、从零开始学调优-Java 全技术栈 性能调优

7JAVA高并发深入解读精通java并发

门课程都涉及到了性能能优化方面的知识,对于了解java底层原理和架构设计都有较大的帮助。

关于进阶的博客的推荐

1近万字总结Java集合核心知识点

2Java 核心知识点整理

3线程的状态转换以及基本操作

4并发编程的优缺点

5. Java内存模型以及happens-before规则

6三大性质总结:原子性、可见性以及有序性

7彻底理解volatile

8. 深入理解AbstractQueuedSynchronizer(AQS)

9详解Condition的await和signal等待/通知机制

10深入理解读写锁ReentrantReadWriteLock

11. 并发容器之ConcurrentHashMap(JDK 1.8版本)

12并发容器之ConcurrentLinkedQueue

13并发容器之CopyOnWriteArrayList

14. 并发容器之ThreadLocal

15并发容器之BlockingQueue

16一篇文章,从源码深入详解ThreadLocal内存泄漏问题

17. 并发容器之ArrayBlockingQueue和LinkedBlockingQueue实现原理详解

18大白话说java并发工具类-Semaphore,Exchanger

19大白话说java并发工具类-CountDownLatch,CyclicBarrier

20. 一篇文章,让你彻底弄懂生产者--消费者问题

21Java中的多线程你只要看这一篇就够了

22Java后端开发面试7大核心总结,为你保驾护航金九银十!

23. Java高并发综合

24Java高并发秒杀系统【观后总结】

25Java并发编程:线程池的使用

26. Java 并发 学习笔记

27Java 多线程下载器的设计与实现

28Java多线程:从基本概念到避坑指南

29. JVM系列之Java内存结构详解

30推荐收藏系列:一文理解JVM虚拟机(内存、垃圾回收、性能优化)解决面试中遇到问题

31jvm系列(八):jvm知识点总览

32强烈推荐!15 个 Github 顶级 Java 教程类开源项目推荐!

33Java进阶资源汇总

34Java开发必须掌握的线上问题排查命令

35. 人人都能掌握的Java服务端性能优化方案

36java系统高并发的解决方案

37Java 后端自学之路

38java多线程——并发测试