网站首页 > 博客文章 正文
你可曾计算过,大学四年一共有多少天? 365*3+1=1461天。在这珍贵的1461天里,你为以后的人生做了那些准备?
其他鸡汤我就不写啦,直接说结果。
1、JAVA基础扎实
1、JAVA基础扎实
2、理解HTTP网络协议,了解TCP和UDP的区别,知道GET和POST的区别,知道在浏览器中输入URL到整个页面显示在用户面前时这个过程中到底发生了什么
3、熟悉Spring IOC/AOP,SpringMVC,Mybatis等框架体系,并有实际开发经验
4、熟练掌握sql,比如mysql、oracle
5、熟练使用Eclipse开发工具,Maven管理工具
6、熟练使用git版本管理工具
7、了解一些操作系统的知识
下面我会一一说明如何达成这个目标。
一、JAVA基础扎实
何为JAVA基础扎实?玩好JDK!
JDK就是JavaSE Development Kit的缩写,要玩好这东西也没那么简单。JDK主要包含了三部分,第一部分就是Java运行时环境,也就是JVM。第二部分就是Java的基础类库,这个类库的数量还是非常可观的。第三部分就是Java的开发工具,它们都是辅助你更好的使用Java的利器。
那么很显然,要玩好JDK,就是要玩好JDK的这三部分。
1.1 Java运行时环境
这一部分其实就是常说的jre,而它的核心其实就一个东西,就是JVM。
至少要了解“jvm 内存模型”,推荐书籍《深入理解Java虚拟机:JVM高级特性与最佳实践》
1.2 Java的基础类库
Java的基础类库从你刚开始学Java就开始接触了,但是,直到你结束整个Java生涯,你都不一定能把所有的类都见一遍。
这说明了什么?是不是说明了Java基础类库的庞大?
错!大错特错!这其实真正说明的是,有很多类你完全不必要care它们,因为它们从你接触Java到放弃,都不一定能接触到。
所以,搞清楚哪些类重要,哪些类不重要,就非常有必要了。这可以让你以最短的时间,做最有价值的事。
下面我只推荐几个常用的类库。
精通java.io、java.lang、java.util源码;
深刻理解java.lang.reflect、java.net、javax.net.*、java.nio.*、java.util.concurrent.*;
还有少部分会用就行,其他大部分根本就不需要了解。
推荐书籍《Java编程思想》
1.3 Java的开发工具
这些开发工具主要就是辅助你开发的了,javac应该是最常用的一个了,虽然你几乎不用手动执行它。此外,其实还有一些比较实用的工具,可以帮助你排查问题。而且有的面试官,也会问你这类问题,比如问你平时都用什么工具排查问题。LZ觉得比较实用的几个工具主要有jmap、jconsole、jstack、jvisualvm,至于这几个工具有什么作用,LZ这里就不提了,如果你要了解这些命令的详细内容,可以去谷歌或者官网上找,还是非常好找的。当然,如果你有兴趣的话,也可以自己去JDK的bin目录下找找,看有没有什么更好玩的工具。
二、理解HTTP网络协议
看我上一篇文章HTTP|GET 和 POST 区别?网上多数答案都是错的!,你需要了解TCP和UDP的区别,知道GET和POST的区别,知道在浏览器中输入URL到整个页面显示在用户面前时这个过程中到底发生了什么。
推荐书籍《HTTP权威指南》。
三、熟悉Spring IOC/AOP,SpringMVC,Mybatis等框架体系,并有实际开发经验
同样看我之前的文章Java|Spring+SpringMVC+MyBatis框架科普,这里最主要的是了解Spring相关的。
推荐书籍《Spring实战》。
四、熟练掌握mysql
知道索引的作用,知道如何创建合适的索引,知道如何鉴别一条sql是否有使用索引。
知道mysql事务的作用,了解各事务隔离级别的区别。
推荐书籍《高性能Mysql》
五、熟练使用Eclipse开发工具,Maven管理工具
使用eclipse开发过java web项目,熟悉常用的快捷键。
熟练掌握maven能够干嘛,jar管理,项目构建等。
六、熟练使用git版本管理工具
推荐廖雪峰的网站Git教程 - 廖雪峰的官方网站
七、了解一些操作系统的知识
锁、进程线程、cpu、内存等
大学的课程很多,找准自己要走的方向,重点学习与你要走的路的课程,偶尔逃课在寝室做项目或去图书馆看书也不是不可以。
当然你也可以不学,只是你毕业找工作时会很狼狈不堪,月薪一千的工作都找不到,这没有夸张,就是现实。
猜你喜欢
- 2024-10-10 开发中必须要掌握的 Git 技巧(git开源项目)
- 2024-10-10 分享几个很赞的git学习资源网(git视频教程)
- 2024-10-10 过来人告诉你,去工作前最好还是学学Git
- 2024-10-10 Github标星10.8K!Java 实战博客项目分享
- 2024-10-10 java开发转行大数据开发的学习路径
- 2024-10-10 Java入门二之Lambda 表达式(java的lambada表达式)
- 2024-10-10 假如从5月开始学Java(java如何从零学起)
- 2024-10-10 学习廖雪峰的JAVA教程---异常处理(抛出异常)
- 2024-10-10 学习廖雪峰的JAVA教程---泛型(super通配符 super T>Pair>)
- 2024-10-10 学习廖雪峰的JAVA教程---异常处理(使用Log4j 日志)
你 发表评论:
欢迎- 07-07Xiaomi Enters SUV Market with YU7 Launch, Targeting Tesla with Bold Pricing and High-Tech Features
- 07-07Black Sesame Maps Expansion Into Robotics With New Edge AI Strategy
- 07-07Wuhan's 'Black Tech' Powers China's Cross-Border Push with Niche Electronics and Scientific Firepower
- 07-07Maven 干货 全篇共:28232 字。预计阅读时间:110 分钟。建议收藏!
- 07-07IT运维必会的30个工具(it运维工具软件)
- 07-07开源项目有你需要的吗?(开源项目什么意思)
- 07-07自动化测试早就跑起来了,为什么测试管理还像在走路?
- 07-07Cursor 最强竞争对手来了,专治复杂大项目,免费一个月
- 最近发表
-
- Xiaomi Enters SUV Market with YU7 Launch, Targeting Tesla with Bold Pricing and High-Tech Features
- Black Sesame Maps Expansion Into Robotics With New Edge AI Strategy
- Wuhan's 'Black Tech' Powers China's Cross-Border Push with Niche Electronics and Scientific Firepower
- Maven 干货 全篇共:28232 字。预计阅读时间:110 分钟。建议收藏!
- IT运维必会的30个工具(it运维工具软件)
- 开源项目有你需要的吗?(开源项目什么意思)
- 自动化测试早就跑起来了,为什么测试管理还像在走路?
- Cursor 最强竞争对手来了,专治复杂大项目,免费一个月
- Cursor 太贵?这套「Cline+OpenRouter+Deepseek+Trae」组合拳更香
- 为什么没人真的用好RAG,坑都在哪里? 谈谈RAG技术架构的演进方向
- 标签列表
-
- ifneq (61)
- 字符串长度在线 (61)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)