Spring的面试题就是无底洞 反正我是怕了

面试官:看你简历上写了读过Spring源码,是吗?

Spring的面试题就是无底洞 反正我是怕了

我: 是的

面试官:读过哪些部分的?

我:读过Spring的启动过程源码,比如扫描包、执行Bean工厂后置处理器、Bean的生成过程等(自信满满)

面试官:读得还挺多,那你可以说说一个Bean是怎么生成的吗?

Spring的面试题就是无底洞 反正我是怕了

我:Bean的生成过程就是Bean的生命周期,包括Bean的实例化、属性注入、初始化等等(险过....)

面试官:嗯,那可以再详细一点说说实例化吗?比如,如果一个类有多个构造方法,Spring该选择哪个构造方法来进行实例化呢?
我: 这个...,我就不会了

Spring的面试题就是无底洞 反正我是怕了

面试官: 好,那关于属性注入你了解多少,比如@Autowire注解的工作原理,这个注解加在属性上和加在方法上,在底层原理上有什么区别?

我: 我不知道,只知道byname和bytype

面试官: 好,那Spring我们就先到这,我来问问你Mysql,Mysql中有哪些存储引擎?
我: 我就知道Innodb和MyISAM, 有其他的,但是记不起来了

面试官: 那Innodb和MyISAM的区别是什么?

我:Innodb支持事务

面试官:还有吗?

我: 我只了解过这一点,其他的...不知道了

面试官: 他们在索引的底层实现上有区别吗?
我: 噢...好像是有,但是我不记得了

Spring的面试题就是无底洞 反正我是怕了

面试官: 那Innodb中的索引底层是如何实现的?
我:B+树
面试官: 那为什么B+树适合来作为索引?


我: ...不知道

面试官: 好吧,是不是平时Mysql用的也不多?
我: 是是是(赶紧跳过这个话题吧)

Spring的面试题就是无底洞 反正我是怕了

面试官: 那我问问JVM相关的,JVM中各种垃圾回收器的区别是什么? 如何对JVM进行调优?调优的思路是什么?


我:...

面试官: 那对于Redis呢?平时工作中都使用Redis来做什么?
我: 主要用来缓存一些经常用到的数据,比如商品的一些信息


面试官: 那你有了解过对于热点数据的解决方案吗?
我: 我们就是把一些常用的商品信息放到Redis中的。
面试官: 嗯,那你们Redis中缓存的商品信息是如何更新的,淘汰机制是什么?
我: 这块..我接触不多,没怎么研究过

Spring的面试题就是无底洞 反正我是怕了

面试官: 哦,那行吧,今天就先到这吧

Spring的面试题就是无底洞 反正我是怕了

也许这只是一次普通的面试经历,但由此揭露的问题却不少。在工作中,产品不断写业务需求,他们也许只要加班一天,而开发就得工作一周才能完成。
当业务领域达到一定地步后,日常编写业务代码已经很难带来突破性的进步,此时就要警惕自己是否变成了业务代码生产机器

,还能否从容应对新技术和适应大环境变化。
另一方面,“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。在经历过成千上百万行代码的锤炼后,通过架构来领略不同角度的程序语言之美。

其实在这次面试的过程中,总结下来就那么几点:spring源码+JVM+mysql+Redis,难吗?难!难吗?好像也不是很难,其实只要在平时工作的过程中,稍微的注意一下,多深入研究一下底层的知识,在某些层次上来说,是为自己的后期发展做准备,临时抱佛脚毕竟不是长久之计,对吧

那对于这些知识该如何学习呢?为大家准备了这样的一些资料

文档:(面试+学习)

Spring的面试题就是无底洞 反正我是怕了

视频

Spring的面试题就是无底洞 反正我是怕了

学习路线图

Spring的面试题就是无底洞 反正我是怕了

篇幅原因,在这里,只为大家展示部分截图,需要这些资料的老铁,点赞+关注+转发,转发后私信“资料”获取,备注:头条,谢谢

最后

小编想说:学习从来不是一蹴而就的,而是在于平时的时候不断地进行点滴积累,学习虽然不是一件特别愉快的事情,但是,坚持下去总能有所收获,在这条路上不断成长的兄弟们,加油,努力


分享到:


相關文章: