最真实的一次spring面试,问完我哭了!

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

在这里插入图片描述

我: 是的

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

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

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

在这里插入图片描述

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

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

在这里插入图片描述

在这里插入图片描述

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

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

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

在这里插入图片描述

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

我:Innodb支持事务

面试官:还有吗?

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

在这里插入图片描述

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

在这里插入图片描述

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

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

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200813153437465.png#pic_center)

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

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

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

在这里插入图片描述

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

在这里插入图片描述

也许这只是一次普通的面试经历,但由此揭露的问题却不少。在工作中,产品不断写业务需求,他们也许只要加班一天,而开发就得工作一周才能完成。
当业务领域达到一定地步后,日常编写业务代码已经很难带来突破性的进步,此时就要警惕自己是否变成了业务代码生产机器,还能否从容应对新技术和适应大环境变化。
另一方面,“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。在经历过成千上百万行代码的锤炼后,通过架构来领略不同角度的程序语言之美。

想要学习Java高架构、分布式架构、高可扩展、高性能、高并发、性能优化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分布式项目实战学习架构师视频免费获取

在这里插入图片描述

领取方式:点击这份《Java面试BAT通关手册》即可获取,覆盖了Java核心技术、JVM、Java并发、SSM、微服务、数据库、数据结构等等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值