团子,我的超人

3.26一面
3.28二面
4.1oc
最爱吃拼好饭的一集。

美团一面,二面面试官人都很好。

一面面经
自我介绍
在学校里面做了什么(帮忙暖场进入状态,应该是)

你知道那些设计模式?
你的项目里面使用了那些设计模式?
jdbc使用了什么设计模式,slf4j使用了什么设计模式。(外观模式,当时狂答策略模式,现在想想有点尴尬。
spi扩展也属于一种外观模式,当时也是模式太多,没关注过外观模式,这一块个人感觉答的一般。)

非常建议把设计模式和自己做过的东西,自己知道的东西结合起来学习一遍。
(就比如单例模式和双重检查;责任链和netty、spring security;代理模式和aop。)
装饰器模式和代理模式的区别。
尽可能记一些比较常用、好用的设计模式,记一些区别和特点。
(这样的话在回答设计模式问题的时候就会留下相对比较好的印象。)

设计原则(soild
single单一职责,open开闭原则,i隔离原则,l里式替换和最少知识原则,d依赖倒置)
其他的就是常规八股和项目问题。

接口限流算法(项目里面用了。)

一些生活团队问题
比如有矛盾怎么解决,有困难怎么解决,任务怎么分配,ddl怎么定,怎么帮助队友。
个人爱好

easy题 共同前缀(说给我出个简单的,我哭死。)
面试后看到一个简单解法,就是排序以后直接对比第一个和最后一个string。

二面面经
校园经历,项目拷打,项目难点。
(aop的实现
aop失效判断
如何解决aop失效)
aop的话大家都知道jdk和cglib以及基于接口和类实现,可以加上aspectj字节码增强。

当时问我判断aop失效,有点懵逼,没意识到问的是类内部调用失效,在网上发现一个宝藏总结。
aop类内部调用,由于调用的是原对象,所以没有走代理对象,aop失效。
可以结合aop和spring事物失效说明。

主要有3种解决方案。
1  依赖注入,自己注入自己的代理对象,然后可以提一嘴三级缓存解决循环依赖。
2 使用aopcontext,使用代理对象替换原对象。
3 使用applicationcontextaware,使用代理对象替换原对象。

middle题,合并重合区间(当时脑子懵了,想着用集合排序,面试官人很好,提示了一下就过了。
现在回忆起来,感觉当时如果自己实现排序的话应该可以弥补一下中间慌张的过程。
所以归并、快排和堆排序,可以多熟悉熟悉,然后手撕的时候自己飞速实现的话感觉也可以加分。)

感觉团子面试官提的问题一环扣一环,如果熟悉的话,就能留下相对比较好的印象。
不熟悉的话,尽量把自己知道的说了,然后就说自己就知道这些,然后面试官可能会扩展一些你不知道的,你可以当场学习一下,然后再面试官的基础上多举几个恰当的例子,应该也不会太差。
全部评论
本科生都会这么多了?我7年了还在啃这些东西,而且没有算法
2 回复 分享
发布于 2025-04-03 11:24 上海
问这么难???
1 回复 分享
发布于 2025-04-13 18:43 湖北
请问aop相关的内容也是简历里提到的么
1 回复 分享
发布于 2025-04-05 23:02 吉林
一样的时间线,可惜是白菜
1 回复 分享
发布于 2025-04-03 09:32 陕西
接offer
点赞 回复 分享
发布于 2025-05-29 10:50 安徽
Mark
点赞 回复 分享
发布于 2025-05-25 21:22 广东
设计模式结合项目学
点赞 回复 分享
发布于 2025-05-16 11:05 湖北
你好 对阿里国际开发实习岗感兴趣吗 可以找我投递简历 保姆式流程服务~
点赞 回复 分享
发布于 2025-05-11 15:36 广东
接好运
点赞 回复 分享
发布于 2025-04-26 14:29 吉林
外观模式和策略模式、模板方法模式感觉都不会分的那么死
点赞 回复 分享
发布于 2025-04-23 11:17 湖南
佬做了什么项目
点赞 回复 分享
发布于 2025-04-19 11:07 四川
接好运
点赞 回复 分享
发布于 2025-04-10 11:27 陕西
世另我
点赞 回复 分享
发布于 2025-04-09 16:28 北京
接好运
点赞 回复 分享
发布于 2025-04-05 23:33 湖北
社招还会问校园经历吗?
点赞 回复 分享
发布于 2025-04-03 12:07 安徽
接好运
点赞 回复 分享
发布于 2025-04-03 04:30 北京
29笔试还没约面,团子再这样我将转战饿了么
点赞 回复 分享
发布于 2025-04-02 21:49 四川
是本科生吗
点赞 回复 分享
发布于 2025-04-02 21:49 天津
接好运
点赞 回复 分享
发布于 2025-04-02 18:49 陕西
接好运
点赞 回复 分享
发布于 2025-04-02 16:00 上海

相关推荐

04-09 13:59
吉林大学 Java
问题 1 请先做个简单的自我介绍,并详细说说你在项目中是如何利用Redis和消息队列处理高并发抢券/秒杀场景的?问题 2你在项目中使用的分布式锁经历了怎样的演进过程?请结合JMeter的压测数据,谈谈最初的Redisson方案是如何实现一人一单的,以及它是怎么处理超卖回滚的?问题 3请详细解释一下Redisson分布式锁中的“看门狗(Watchdog)”机制是如何工作的?它的触发条件和底层续期逻辑是什么?问题 4如果不直接使用Redisson,让你自己手动编码实现一个类似“看门狗”的自动续期机制,你会怎么设计这套逻辑?问题 5既然Redis本身支持设置Key的过期时间,那我们为什么不能直接依赖这个自动过期时间来释放分布式锁?完全依赖超时自动释放会有什么隐患?问题 6在预扣减Redis库存成功后,如果由于网络故障或RabbitMQ宕机导致消息发送失败,数据库没有成功落库,这种情况下的数据不一致问题你是如何保证兜底解决的?问题 7你提到方案经过了优化,请问从纯分布式锁优化为Lua脚本方案后,系统的QPS具体提升了多少?性能翻倍的根本原因是什么?问题 8使用Lua脚本嵌入Redis执行确实能大幅提升并发性能,但在工程实践中,编写和维护Lua脚本存在哪些弊端或需要注意的风险?问题 9你提到项目中大量使用了MyBatis Plus,那么请问MyBatis底层是如何防止SQL注入的?它的核心原理机制是什么?问题 10在使用MyBatis Plus进行数据分页查询时,它的物理分页底层是如何实现的?拦截器(Interceptor)在这里起到了什么核心作用?问题 11框架在进行物理分页时,具体的分页参数(如当前页码、每页大小)在应用层和底层之间是如何封装和传递的?问题 12除了MyBatis Plus,你平时还会去主动研究哪些主流框架的底层源码?能分享一下你最熟悉的框架源码机制吗?问题 13当你在项目中需要引入一个新的中间件或技术栈时,你的学习和落地路径是怎样的?你会如何平衡AI辅助工具和官方文档的使用?问题 14在日常开发排错和遇到复杂的系统性能瓶颈时,你通常会如何利用AI工具?有什么核心决策是你绝对不会完全交由AI去决定的?问题 15你在设计分布式锁的Key时,曾和AI的建议产生过分歧。请结合具体的业务安全场景(如防黑产刷单),谈谈你是如何权衡纯粹的“技术并发度”与真实的“业务安全性”的?问题 16结合你的项目开发经验,谈谈你为什么深度依赖Spring Boot框架?它的核心设计优势(例如自动装配)在底层是如何实现的?问题 17请深入讲解一下Spring的IOC容器是如何管理Bean的生命周期的?特别是遇到带有AOP增强的循环依赖时,三级缓存是如何精妙运作来解决这个死循环问题的?问题 18在处理系统中大量重复的公共字段(如创建时间、更新人)时,你是如何利用自定义注解结合Spring AOP和反射机制,实现无侵入式自动填充的?算法题用java实现lru
查看20道真题和解析
点赞 评论 收藏
分享
评论
54
252
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务