美团一面:
收到了HR的信息,通知我去面试,说实话真的挺紧张的。自己准备了近一个月的时间,很担心面试不过,到时候又后悔不该“裸辞”。
- 自我介绍
- spring的IOC,AOP原理
- springmvc的工作流程
- handlemapping接收的是什么
- 项目中你用到了MyBatis,说说#和$的区别
- MyBatis你写的XML怎么绑定对应的接口?namespace.id
- Spring有几种方式定义Bean
- git你用过哪些命令
- linux怎么在查找目录下的一个文件
- redis基本数据结构
- redis单线程模型
- 事务的四大特性
- 解释线程池的三个主要参数
- 具体的问项目中线程池如何使用的(这里因为有些忘记,导致扣了很久)
- AQS都有什么公共方法
- 那单例模式和prototype模式,spring都是怎么实现的
- 计算机网络应用层都有什么协议
美团二面
第二面问的挺多的内容,只记得个大概,所以也只能分享一个我所能记忆到的面试内容
- 描述从输入一个url到得到结果的过程
- springMVC的执行过程
- MVC设计模式
- static变量初始化在哪个阶段
- jvm堆中的内存区域分布
- 垃圾收集算法
- redis如何实现高并发
- synchronized是可重入的吗?是公平还是非公平
- 公平锁和非公平锁的区别、
- 项目中如何使用的redis
- MySQL的的默认隔离级别、防止了什么读
- SQL题:有一个学生表,有id和name,姓名有可能重复,查询出所有姓名重复的人的名字
- 四次挥手的过程
- 动态规划的特点
- 索引结构?为什么使用B+索引
- CAS原理?用CAS实现 两个线程给同一个变量赋值
- 为什么 Redis 需要把所有数据放到内存中
- mysql的主从复制机制
- 将阿拉伯数字转换成中文数字。如(int)123456->十二万三千四百五十六
这一面自我感觉比一面好很多,面试官态度很和蔼,就让我没有那么的紧张,让我稍等一下,我也不知道下一面是情况,或者有没有下一面。
美团三面
- 自我介绍
- 介绍一个你觉得难的项目
- 说一下sql做了什么优化
- 项目中如何使用的redis
- redis如何保持和mysql的数据一致性
- 说一下都有什么类型二叉树
- 代码题:构建一个二叉树,做前序的非递归遍历
- 数据库最大的表大概多大
- 了解哪些分布式的技术
- 最近在看什么书?说一说
面试官给出的建议是,如果代码再稍微优美一点就很好了,不过也没什么大问题。然后跟我说让我等一等,出去商量商量。哎,真的太难了~~~
交叉面
来了个其他部门更牛B的大佬,感觉自己要凉,我太难了~~~
- 项目介绍一下
- AQS介绍一下
- Java中有哪些锁机制
- 介绍一下ConcurrentHashMap
- 为什么项目中用Springboot
- 用过Spring事务吗?有哪些事务传播属性
- A方法上有@Transactional注解,B方法上也有@Transactional,在一个方法里(也有@Transactional注解)。先调用A,再调用B,B出现了异常,A是否能提交?如果不能,怎样能让A提交成功
- 缓存穿透了解吗?怎么解决
- 布隆过滤器了解吗?有什么问题
- 有A,B两个大的文件集合,记录了一些订单号,怎样找到A中有的但B中没有的订单号?使用布隆过滤器可以吗
- 一个方法上有@Transactional注解,里面调用了A(),B(),C()。其中B进行了网络调用,可能传输时间比较长,这样设计有什么问题?怎么解决
- MQ用过吗
- 最近在学什么
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Java)
最后的内容
在开头跟大家分享的时候我就说,面试我是没有做好准备的,全靠平时的积累,确实有点临时抱佛脚了,以至于我自己还是挺懊恼的。(准备好了或许可以拿个40k,没做准备只有30k+,你们懂那种感觉吗)
如何准备面试?
1、前期铺垫(技术沉积)
程序员面试其实是对于技术的一次摸底考试,你的技术牛逼,那你就是大爷。大厂对于技术的要求主要体现在:基础,原理,深入研究源码,广度,实战五个方面,也只有将原理理论结合实战才能把技术点吃透。
下面是我会看的一些资料笔记,希望能帮助大家由浅入深,由点到面的学习Java,应对大厂面试官的灵魂追问
这部分内容过多,小编只贴出部分内容展示给大家了,见谅见谅!
- Java程序员必看《Java开发核心笔记(华山版)》
- Redis学习笔记
- Java并发编程学习笔记
四部分,详细拆分并发编程——并发编程+模式篇+应用篇+原理篇
- Java程序员必看书籍《深入理解 ava虚拟机第3版》(pdf版)
- 大厂面试必问——数据结构与算法汇集笔记
其他像Spring,SpringBoot,SpringCloud,SpringCloudAlibaba,Dubbo,Zookeeper,Kafka,RocketMQ,RabbitMQ,Netty,MySQL,Docker,K8s等等我都整理好,这里就不一一展示了。
2、狂刷面试题
技术主要是体现在平时的积累实用,面试前准备两个月的时间再好好复习一遍,紧接着就可以刷面试题了,下面这些面试题都是小编精心整理的,贴给大家看看。
①大厂高频45道笔试题(智商题)
②BAT大厂面试总结(部分内容截图)
③面试总结
3、结合实际,修改简历
程序员的简历一定要多下一些功夫,尤其是对一些字眼要再三斟酌,如“精通、熟悉、了解”这三者的区别一定要区分清楚,否则就是在给自己挖坑了。当然不会包装,我可以将我的简历给你参考参考,如果还不够,那下面这些简历模板任你挑选:
以上分享,希望大家可以在金三银四跳槽季找到一份好工作,但千万也记住,技术一定是平时工作种累计或者自学(或报班跟着老师学)通过实战累计的,千万不要临时抱佛脚。
另外,面试中遇到不会的问题不妨尝试讲讲自己的思路,因为有些问题不是考察我们的编程能力,而是逻辑思维表达能力;最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
维表达能力;最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!