数据库方面强烈推荐以下三个博客,其中一个是我们大神于海强总结的,超级全,超级赞,大家可以参考
https://zhuanlan.zhihu.com/p/25235279
http://www.cnblogs.com/Lawson/archive/2015/11/30/5008741.html
http://www.cnblogs.com/zhangs1986/p/4914125.html
这块建议大家以一个地址从在地址栏中输入后开始,到服务器返回结果为之为线索,来整体掌握整个脉络,常用几层的作用,应用层,传输层一直到物理层,每层的作用是什么,以及每层涉及到的协议都有什么?常问的协议应该是http协议,tcp udp协议,ip协议,面试中还问到使用http请求头与响应头来实现缓存,完成页面的优化,当时没有答出来,后来经过查资料,理清了咋回事,将博客放到下边,供大家参考
http://www.cnblogs.com/520yang/articles/4807408.html
这块也没太好的资料,建议大家以课本为主吧,主要多看一下以下几个方面:
1. 内存管理常用算法,要清楚为什么连续存储的访问速度快,但会产生大量内存碎片,而离散方式存储的访问速度慢,但产生内存碎片少或者不会产生,每种算法使用自己 熟悉语言的实现方式
2. 局部性原理以及基于局部性原理,虚拟内存的实现方式以及调度方式
3. 进程与线程的区别
4. 死锁的条件
5. 如何解除以及避免死锁,银行家算法必须清楚
6. 进程间的通讯方式有那些
这块建议大家参考《大话数据结构》这本书
常用的算法,冒泡,选择,插入,希尔,归并,堆排,快排,二分查找这些算法最好能熟练掌握其时间复杂度,空间复杂度以及能熟练的手写出对应的算法
树的前、中、后序遍历的递归,非递归方式熟练手写,层序遍历的实现,熟练手写
有了以上基础,大家可以多刷刷算法题了,推荐一本算法数,里边内容很经典,而且是面试,笔试中常问到算法题---《程序员代码面试指南 IT名企算法与数据结构题目最优解 ,左程云著 ,P513》
http://pan.baidu.com/s/1hr9eaiw
Linux常用命令最好掌握一些,如ps,netstat,grep,awk等,还有vim使用中 的一些常用操作
1. 基本类型,引用类型的存储方式等,这些最好与上边jvm内存模型一起复习
2. Java的异常体系
3. Java中多线程的实现方式,以及线程池的实现与使用
4. 线程的生命周期
5. Hashmap,hashtable的实现方式与区别,线程安全问题,hashmap为什么会产生线程安全,如何避免。
6. ConcurrentHashMap分别在jdk1.7,1.8中的实现方式是怎么样的,如何保证的线程安全以及1.8中的红黑树如何使用的
7. 常用的设计模式