阿里面经

二面卒。。。

但是感觉很满足,面试官都很 nice,让我得到很多启发。

一面

  1. 自我介绍
  2. 经历的介绍
  3. 敏感词过滤的实现
  4. Java常用的集合类?用法 、特点以及底层数据结构?
  5. hashmap 在多线程情况下的问题?
  6. Java中的反射机制,在你项目中的应用?
  7. 创建多线程的几种方式?
  8. get 和 post 请求的区别?
  9. Linux 文件处理命令?查找文件中的内容,用什么命令?
  10. 有一张学生表,有两个字段,一个叫 name,一个叫 class,写一个 sql 查找出 name 相同的学生的记录
  11. http 的长连接和短连接?
  12. http、tcp、udp 的区别和联系
  13. jvm 的内存模型有哪些区域
  14. spring 依赖注入的方式
  15. 数据量很大的一张表,应该怎么解决?
  16. 最长公共前缀问题
  17. 是否是回文串

二面

  1. 自我介绍
  2. 在学校做过的项目,介绍一下
  3. 你们这个项目的流量来源
  4. 你负责模块的架构
  5. 对于文件上传这一块的安全,你们是怎么做的?
  6. 对于用户的权限级别,你们是怎么做的?
  7. token 是采用的什么原理?
  8. 你们的项目能承受的 pv 是多少?在这之后优化你有什么看法?
  9. 数据库的优化在你项目里面有哪些?
  10. Java 反射机制在你项目里面的体现?
  11. spring bean 的生命周期
  12. bean 的作用域?你项目里面有哪些作用域?
  13. 你的职业规划

总结

对于学习到的知识点,要能够在实际场景中去实践,并了解到它们具体的区别和联系。