2021年阿里云数据库部门_java开发岗(暑假实习

背景:西安某211大三学生,大二开始学习java,这几天恶补jvm和juc还有数据库相关的知识。
面经是凭借回忆写的,可能顺序会有点乱。电话面录了音,但是好像没保存成功。
一面 (2021.3.11)40min + 90分钟做题
一上来问项目,简历上写的是springMVC的一个项目。
面试官人非常nice。
但刚开始挺严肃,非常快的在问项目的各种业务,感觉是在检查是不是自己真的实现过。搞的有点紧张。
具体业务回答了一遍以后开始进入答题环节,语速也放慢了下来。氛围逐渐轻松。
说说对springMVC框架的理解。
spring框架有哪些好处。如何简化开发的。
说说对依赖注入的理解。
依赖注入的方式。
说说对ioc的理解。
讲一下类的生命周期。
说说beanFactory。
DispatcherServlet是什么,前端请求发送给DispatcherServlet后的流程是什么。(看面经的好处)
mybatis了解吗?说说对mybatis的理解,框架有什么好处,怎么样和数据库连接?
使用了什么数据库?(mysql)
讲讲mybatis的缓存。
讲一下索引的创建过程。(有点懵,讲了索引的底层)
如何进行索引的调优,怎么知道创建的索引是否加快了查询。(不会)
项目里一共有多少张表,分别存在什么样的联系。
怎么样实现多线程。
知道OOM吗,java有gc为什么还会出现oom?怎么分析oom出现的位置。
final,finally,finalize
java8有什么新特性。
知道streams吗,具体怎么用。
怎么解决死锁问题,死锁出现的最重要原因是什么?
讲一讲熟悉的设计模式(单例,工厂,观察者,适配器,代理模式)
讲一讲单例有哪几种实现。(饿汉,懒汉..居然不接着问dcl)。
讲一讲乐观锁,悲观所的区别。
数据库事务有哪几种隔离级别。
说一下自己的优势,不足。
以后的职业规划。

总体来说感觉一面并没有问的很深入,在考察知识面的广度。基本上都是java相关的知识,操作系统和计网涉及的较少。

接着甩了一道题(伯乐平台)。给一个半小时的时间。
评测题目:Log日志分析
Log文件一行是一条记录,字段中间用空格分开 如:
ReadError: path not find error
WriteError: file not exist error
...
假设第一个字段(:前面的字段,ReadError、WriteError等)是错误类型,总共有10个日志文件,filePath1, filePath2...  filePath10
需求是,多线程并行处理10个文件,汇总之后,返回出现次数最多的10种错误类型及其个数。
比如:
1.  错误类型: ReadError  总出现次数: 1005
2.  错误类型: WriteError  总出现次数: 903
...
注: 假设内存足够

多线程+hashmap+大根堆。

#实习##阿里云##面经##Java工程师#
全部评论
请问最后那题多线程+hashmap不会出现线程安全问题吗?
1 回复 分享
发布于 2021-03-12 08:49
写那个代码的时候可以百度吗?
1 回复 分享
发布于 2021-03-12 14:15
不会是西电的吧
点赞 回复 分享
发布于 2021-03-14 15:43
请问有二面面经吗?我发现我的面试过程好像和你的比较像,二面估计可以参考一下😂
点赞 回复 分享
发布于 2021-04-21 09:24

相关推荐

霁华Tel:秋招结束了,好累。我自编了一篇对话,语言别人看不懂,我觉得有某种力量在控制我的身体,我明明觉得有些东西就在眼前,但身边的人却说啥也没有,有神秘人通过电视,手机等在暗暗的给我发信号,我有时候会突然觉得身体的某一部分不属于我了。面对不同的人或场合,我表现出不一样的自己,以至于都不知道自己到底是什么样子的人。我觉得我已经做的很好,不需要其他人的建议和批评,我有些时候难以控制的兴奋,但是呼吸都让人开心。
点赞 评论 收藏
分享
评论
7
42
分享
牛客网
牛客企业服务