记录一下最近面试的一些问题。其实个人很享受面试的过程,一方面可以让自己发现知识的盲区和漏洞,查缺补漏,另一方面,跟面试官的交流也让人受益匪浅。很幸运遇到了一些非常好的面试官,指出了我的不足,也给予了我鼓励,让我找到接下来学习的方向。
其实现在有点迫不及待想实习参与真正的项目学些激动人心的技术啦,面试久了也有点倦怠,感觉笔试面试让自己有点不能静下心来学习想学的技术。希望自己可以进入心仪的公司,不辜负一年来坚持努力的学习!
下面是还有印象的一些题目,不区分是哪家公司的了,都放一起了。
题目
自我介绍
hibernate原理、怎么拿到配置参数
SpringMVC工作流程
Hibernate缓存机制
Hibernate和MyBatis底层原理的不同
Hibernate和MyBatis的性能对比、分页(这个太久不写,居然忘记了..)
Struts与SpringMVC
tcp和udp区别
tcp报文格式
tcp滑动窗口、拥塞避免机制
三次握手,四次挥手。为什么不是两次握手。握手发送的报文
session实现方法
输入网址时,实际会发生什么(dns整个过程)
https的过程
http状态码
java GC
内存溢出与内存泄漏
类加载
蓄水池算法
数据流求中位数
搜索框智能提示原理
jdk1.8特性
泛型
序列化
反射
java引用类型
hashcode和equals
Object类的方法
线程通信
进程间通信,哪种效率最高
线程和进程区别
目前的知识漏洞:
Hibernate和MyBatis的原理还不够深入,以前把重点放在SQL上了,对框架了解不够,看看源码
tomcat的原理以前看过,现在有点记不清,还要再看一下,结合实践理解
Linux命令还需要再多熟练一下,用虚拟机敲一遍
动态规划的算法题,多写代码多思考!
参考书:
《深入理解Java虚拟机》(强烈推荐,解答了我好多困惑)
《Java并发编程的艺术》、《Java并发编程实战》(个人感觉实战讲得更有条理)
《Thinking in Java》、《Effective Java》(Java基础很重要!!)
《计算机网络》、《图解TCP/IP》(不推荐图解,虽然有趣,但讲得太浅)
《算法导论》(以前每天坚持看一点...最近没时间看了)
《高性能MySQL》(虽然很厚,可以挑章节读,讲得很透彻)
《Redis实战》(个人感觉这个比Redis设计与实现好看,这个是python,设计与实现是c,没有java的,哭哭)
《Hadoop权威指南》(还没看完,主要想学习一下Map-Reduce的思想)
《大型网站技术架构》(写的很好!!可以拓宽眼界,推荐,目前还没机会参与大型网站,期待)
《大型网站系统与中间件》
《深入分析Java Web》(这个还没看完)
《Spring实战》、《Spring技术内幕》、《Spring源码深度解析》(嗯。。Spring源码的方法名长的令人头大,个人感觉Spring技术内幕看起来舒服一些)
接下来想看的:
Dubbo源码、HSF(这个资料好少,感觉要进阿里才有机会深入学习了)
metaq、TDDL
《深入浅出MyBatis》、Hibernate原理
《Linux命令行与shell脚本》
《Redis设计与实现》
《MySQL技术内幕-InnoDB存储引擎》
《Maven实战》一直用maven,但是处理错误一直是凭经验,想了解一下原理,以后也能更好的解决错误。
《Zookeeper:分布式过程协同技术详解》想了解一下