
3个月时间掌握Java基础知识,分享楼主的学习心路历程。
往期精选(欢迎转发~~)
前言
我是4月25日开始确定要好好学习Java,上周6月26日完成Java的第二阶段学习,总共学习Java共计64天,加上之前对基本知识的30天学习,共计约90天,算下来刚好3个月。下面简单记录一下我的Java学习轨迹,如何从Java小白,到基本掌握Java技术栈的常用基础知识。
温馨提示:本文中的所有文章,都可以进入我的公众号“楼仔进阶之路”获取。
JAVA基础知识
我是于今年3月,将JAVA的基础知识整体初步学习了一遍,主要是结合书籍《JAVA疯狂讲义》,包括Java的基本语法、集合、泛型、并发编程等基本知识。
因为项目需要,也简单学习了Spring、Spring Boost、Maven和Mybatis,只是很粗略的学习那种,比如说@Service注解是干啥用的,Mybatis是怎么操作DB等(其实主要是因为看不懂项目代码,用来扫盲用的。)
学习时间:3月1日 - 3月30日
设计模式
这个其实和Java没有太大关系,但是我还是把它列进来,因为在开发Java的过程中,不可避免会用到各种设计模式,所以希望尽快把这块的坑填完。
学习时间:4月25日 - 5月8日
学习内容:
-
《设计模式系列1 - 模板模式&策略模式》
-
《设计模式系列2 - 工厂模式》
-
《设计模式系列3 - builder模式》
-
《设计模式系列4 - 组合模式》
-
《设计模式系列5 - 单例模式》
-
《设计模式系列6 - 代理模式》
-
《设计模式系列7 - 装饰器模式》
-
《设计模式系列8 - 门面模式》
学习资料:菜鸟教程
学习心得:
不建议大家拿一本书,从第一个设计模式看到最后一个设计模式,如果这样的话,我保证你记住的,永远是最后一个设计模式。
设计模式需要结合实际的项目,才能体会的更加深刻;
如果当下没有实际的项目,可以回顾一下之前做的项目,然后再结合某个具体的设计模式进行学习;
设计模式不建议一次性学成,我是先结合当下和之前的项目,通过前6篇文章,将自己遇到的设计模式进行总结,最后两篇是项目中遇到该设计模式,然后才去学习。
总结:建议大家先结合之前的项目,对自己用到的设计模式进行总结学习,然后后面项目遇到相关设计模式,再进行该设计模式的学习,这样才能学以致用。千万不要抱着一本书,或网上的某个教程,去啃设计模式!!!
------- 真正的系统学习,是从下面开始的!!!-------
------- 真正的系统学习,是从下面开始的!!!-------
------- 真正的系统学习,是从下面开始的!!!-------
JAVA并发编程
这个是JAVA语法中非常核心的知识,学习这个的前提,是大家先掌握JAVA的基本语法,建议大家可以花一周时间快速看完一本讲解JAVA基础语法的书籍。
学习时间:5月9日 - 5月24日
学习内容:
-
《Java并发编程系列1 - 基础知识》
-
《Java并发编程系列2 - volatile》
-
《Java并发编程系列3 - synchronized》
-
《Java并发编程系列4 - final》
-
《Java并发编程系列5 - 对象的共享》
-
《Java并发编程系列6 - 同步工具类》
-
《Java并发编程系列7 - 线程池基本知识》
-
《Java并发编程系列8 - 多线程实战》
-
《Java并发编程系列9 - 锁》
学习资料:
-
volatile:https://blog.csdn.net/u012723673/article/details/80682208
-
并发编程资料:https://redspider.gitbook.io/concurrent/di-yi-pian-ji-chu-pian/2
-
内存模型(一般般):https://blog.csdn.net/javazejian/article/details/72772461
-
陈晓明:http://ifeve.com/java-memory-model-0/
-
spring非常好的文章:https://www.cnblogs.com/szlbm/p/5512931.html
-
栅栏:https://blog.csdn.net/qq_38293564/article/details/80558157
-
线程同步工具:https://blog.csdn.net/yjc0403/article/details/84912279
-
线程池:https://blog.csdn.net/mu_wind/article/details/113806680
学习心得:
学习周期会比较长,我是分2个阶段学习,先学习内存模型部分,再学习并发编程部分;
最好结合书籍《java并发编程实战》来看,可以让你对并发编程有个整体的认识,其实这本书只是补充,对于你需要掌握的并发编程相关知识,里面的知识点可能只覆盖30%-40%;
一定要动手去写Demo,不要只看不写,否则很容易忘记;
最好是每看完一部分内容,能从你的项目中,找到类似的代码进行学习,这个印象更加深刻。(我最后是看完了我同事写的一个并发编程框架,后续如果让我自己写,我应该也能写出来)
Spring
这个不用我多说吧,我刚开始学习Java,感觉最头疼的就是这个Spring,里面一堆注解,看得我头都大了,难怪Java的学习成本比较高。
学习时间:5月25日 - 6月5日
学习内容:
-
【Spring基础系列1】基于注解装配Bean
-
【Spring基础系列2】很全的Sping IOC基础知识
-
【Spring基础系列3】Spring常用的注解
-
【Spring基础系列4】注解@Transactional
-
【Spring基础系列5】Spring AOP基础(上)
-
【Spring基础系列5】Spring AOP基础(下)
-
【Java基础系列】Lombok常用注解
学习资料:
-
菜鸟教程
-
原理篇:https://zhuanlan.zhihu.com/p/29344811
-
很详细的原理篇:https://www.jianshu.com/p/b60c30fdcc65
-
Configuration注解:https://www.cnblogs.com/cxuanBlog/p/11117039.html#%E5%9F%BA%E7%A1%80%E6%A6%82%E5%BF%B5%EF%BC%9Abean-%E5%92%8C-configuration
-
transactional:https://blog.csdn.net/jiangyu1013/article/details/84397366
-
https://blog.csdn.net/mingyundezuoan/article/details/79017659
-
https://www.cnblogs.com/clwydjgs/p/9317849.html
-
Spring IOC知识点一网打尽:https://juejin.cn/post/6844903609067372558#heading-30
学习心得:
先学习注解,将项目中遇到的常用注解全部给扫盲掉,除了Sprin g的注解,还有Lombok常用注解;
主要掌握IOC和AOP知识,所以这个可以分2块来学习;
一定要自己写Demo跑一下,否则就是白学了!!!
学习过程中,比如学习某个注解,或者AOP,看完基础知识后,找项目中用到的地方,看使用姿势。
MyBatis
如果用到MySQL,或者其它DB,这个你是跑不掉的,哎,Java的框架,就是TM的多。
学习时间:6月6日 - 6月12日
学习内容:
-
【MyBatis系列1】基础知识(上)
-
【MyBatis系列1】基础知识(下)
-
【MyBatis系列2】MyBatis与Spring整合
-
【MyBatis系列3】MyBatis SQL执行流程
-
【MyBatis系列4】MyBatis与Spring Boost整合
学习资料:主要看的菜鸟教程
学习心得:
这个光看菜鸟教程,其实只能学到一些皮毛,最好是结合菜鸟教程,然后到网络去完善你的知识,比如掘金、知乎等;
八股文部分还是需要掌握,可以让你对MyBatis更了解;
不建议大家上来就看源码,可以稍微初步过一下别人写的博客;
一定要写Demo!一定要写Demo!一定要写Demo!重要的事情说三遍!自己去集成MyBatis和Spring和后面的Spring Boost。
最好的学习方式,当然还是项目啦,我学完基础部分,就开始去趴项目代码了,只要是MyBatis的部分,我都不放过。(小米中台有个地方用到MyBatis,涉及到各种接口的高深操作,我看了一天都没看懂,后面技能提高了,再回过头去看)
Spring Boost
又是TM的Java框架,以后谁再告诉我转技术栈影响不大,我要和他拼命。
学习时间:6月13日 - 6月20日
学习内容:
-
【Spring Boot系列1】一文带你了解Spring Boot(上)
-
【Spring Boot系列1】一文带你了解Spring Boot(下)
-
【Spring Boot系列2】还在为配置文件注解头疼?一文带你全部搞定!
-
【Spring Boot系列3】自动化配置详解
-
【MyBatis系列4】MyBatis与Spring Boost整合
学习资料:
-
教程:http://c.biancheng.net/spring_boot/
-
一篇搞定:https://juejin.cn/post/6844904024286691335#comment
-
非常好的一篇搞定的文章:https://juejin.cn/post/6844903984780541959#heading-2
-
面试题:https://juejin.cn/post/6844904125709156359
-
原理分析:https://juejin.cn/post/6854573218498347022
-
很好的原理分析文章:https://blog.csdn.net/mnicsm/article/details/93893669
-
非常全的流程解析:https://blog.csdn.net/hfmbook/article/details/100507083?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_baidulandingword-0&spm=1001.2101.3001.4242
学习心得:
先掌握框架的八股文知识,主要是框架的加载流程;
实战部分主要掌握Spring Boost的配置部分,然后还有里面常用的注解;
还是需要自己写Demo,MyBatis与Spring Boost整合,已经给你安排上了;
这个就是更抽象版的框架,建议只先掌握上述知识,后面项目中遇到相关知识,再深入学习。
Maven
这块内容不多,主要是项目管理部分,一周时间绝对够。
学习时间:6月20日 - 6月26日
-
菜鸟教程
-
教程:https://www.runoob.com/maven/maven-tutorial.html
-
一篇搞定:https://juejin.cn/post/6844904021392654350#heading-18
-
入门教程:https://juejin.cn/post/6844903543711907848#heading-16
-
水文一篇:https://juejin.cn/post/6844903839435341832#heading-2
学习心得:
先掌握基础知识部分,菜鸟教程足矣;
找几个Java项目,看看pom.xml是怎么写的,然后自己再去研究一下,基本就OK了;
后面还是跟着项目成长。
后续学习
-
微服务框架:Dubbo + SpringCloud
-
WEB编程:SpringMVC + Servlert/JSP + Tomcat
-
进阶学习:《JAVA编程思想》 + 《深入理解Java虚拟机》
学完这些,应该才能进入Java的中级水平,下半年估计需要继续在Java中卷了,不过应该不会按照目前的这种学习强度,更多的时间会投入到公司的项目中,虽然目前又回到一线,但还是希望能在公司有更长远的发展,光靠这些其实远远不够,以后还得继续往管理发展。
学习时间安排
这个非常重要,很多人给自己列了一堆计划,就是很难实时,总结一句话就是“代码都写不完,天天改bug,哪有时间学习”,可以参考《发一篇水文,对自己的学习做一个总结》,如果你也能每天6点起床,每天坚持学习2个小时左右,无论哪门技术,相信你也能速成。
后记
距离上一篇水文《发一篇水文,对自己的学习做一个总结》,刚好一个月时间,这个算是第二篇水文吧,等我把后续需要学习的知识掌握的差不多了,就是我的第三篇水文了。
这周学习动力有些不足,一方面是因为自己的一些私事,另一方面是在思考一些问题,希望这个周末能调整好心态,开启新一轮的学习。
欢迎大家多多点赞,更多文章,请关注微信公众号“楼仔进阶之路”,点关注,不迷路~~

博主分享了3个月内从零基础到掌握Java核心技术的学习历程,包括JAVA基础知识、设计模式、并发编程、Spring、MyBatis、Spring Boot和Maven等。强调了设计模式的应用和并发编程的重要性,推荐结合实际项目学习,并提供了相关学习资源和时间安排建议。
1342

被折叠的 条评论
为什么被折叠?



