• Hibernate 的缓存机制。

  • 什么是 Hibernate 延迟加载.

  • 为什么要用 spring。

  • SQL(主要考察 Group by 和 Order by 相关知识)

  • 查询每个班级成绩最高的学生。

  • 查找出每个班级成绩第二的学生。

  • 按照班级查询每个班上总分前三的学生。

  • 查找入职员工时间排名倒数第三的员工所有信息。

  • 薪水排序后薪水排名在第 2–8 的员工。

  • 按工资进行排名,排名从 1 开始,工资相同排名相同(如果两人并列第一则没有第二名,从第三名继续排)。

  • 用一条 sql 语句取出所有姓名有重复的学员姓名和重复的记录数。

  • JavaScript/JSP/Servet (这些一般是基础题)

  • JSP 的内置对象以及作用。

  • JSTL 的常用标签。

  • Servlet 的生命周期。

  • URL 和 URI 的区别。

  • Ajax 同步和异步的区别。

  • 使用 ajax 发送异步请求的流程。

  • 其它

  • &和 &&的区别。

  • ==和 equals 的区别。

  • int 和 Integer 的自动拆箱/装箱相关问题。

  • IO 和 NIO 的区别。

  • final、finally、finalize 的区别。

  • 重载(Overload)和重写(Override)的区别。

  • String、StringBuffer 和 StringBuilder 的区别。

  • 如何实现浅克隆和深克隆。

  • 单例模式的实现以及最优。

  • 排序的实现(冒泡、选择、快速等)。

  • 去除重复的元素(实际是重写 equals 和 hashcode)。

二.面试流程

现在有不少公司先是人事面试,然后技术面试。所以在人事这块谈论工资的时候,最好不要说死,或者先不谈,留着技术面试过了之后再谈。有点因为在工资待遇这块没谈好,就直接走人了。毕竟面试双方都要花费不少时间,所以这块需注意!

在相谈的时候,要注意礼貌,无论是否成功,都应该注意言行和态度。

在面试结束之后,理应说声感谢!毕竟面试其实也是成长的一种。

三.面试技巧

个人能力这方面无非两个方面,广度和深度。

技巧很简单,就是说自己擅长的。技术掌握广,但是不深,就可以将自己的技术广度多说点,顺便可以提下自己的优点例如:学习新技术很快;技术掌握深,但是不广,就可以将掌握的深度多说点,可以提下自己在学习这块的专研度。如果在这两点都没有太明显的优点的,可以尝试从项目业务说,最好将项目吃透。与面试官相谈的切记要诚实,不要弄虚作假。碰到不会的或者了解不深的,直接跳过,最好将面试官引导到自己擅长的领域。

【阿里天猫、蚂蚁、钉钉面试专题题目加答案】

  • 1. junit 用法,before,beforeClass,after, afterClass 的执行顺序

  • 2. 分布式锁

  • 3. nginx 的请求转发算法,如何配置根据权重转发

  • 4. 用 hashmap 实现 redis 有什么问题(死锁,死循环,可用 ConcurrentHashmap)

  • 5. 线程的状态

  • 5. 线程的阻塞的方式

  • 6. sleep 和 wait 的区别

  • 7. hashmap 的底层实现

  • 8. 一万个人抢 100 个红包,如何实现(不用队列),如何保证 2 个人不能抢到同一个红包,可用分布式锁

  • 9. java 内存模型,垃圾回收机制,不可达算法

  • 10. 两个 Integer 的引用对象传给一个 swap 方法在方法内部交换引用,返回后,两个引用的值是否会发现变化

  • 11. aop 的底层实现,动态代理是如何动态,假如有 100 个对象,如何动态的为这 100 个对象代理

  • 12. 是否用过 maven install。 maven test。git(make install 是安装本地 jar 包)

  • 13. tomcat 的各种配置,如何配置 docBase

  • 14. spring 的 bean 配置的几种方式

  • 15. web.xml 的配置

  • 16. spring 的监听器。

  • 17. zookeeper 的实现机制,有缓存,如何存储注册服务的

  • 18. IO 会阻塞吗?readLine 是不是阻塞的

  • 19. 用过 spring 的线程池还是 java 的线程池?

  • 20. 字符串的格式化方法 (20,21 这两个问题问的太低级了)

  • 21. 时间的格式化方法

  • 22. 定时器用什么做的

  • 23. 线程如何退出结束

  • 24. java 有哪些锁?乐观锁 悲观锁 synchronized 可重入锁 读写锁,用过 reentrantlock 吗?reentrantlock 与 synmchronized 的区别

  • 25. ThreadLocal 的使用场景

  • 26. java 的内存模型,垃圾回收机制

  • 27. 为什么线程执行要调用 start 而不是直接 run(直接 run,跟普通方法没什么区别,先调 start,run 才会作为一个线程方法运行)

  • 28. qmq 消息的实现机制(qmq 是去哪儿网自己封装的消息队列)

  • 29. 遍历 hashmap 的三种方式

  • 30. jvm 的一些命令

  • 31. memcache 和 redis 的区别

  • 32. mysql 的行级锁加在哪个位置

  • 33. ConcurrentHashmap 的锁是如何加的?是不是分段越多越好

  • 34. myisam 和 innodb 的区别(innodb 是行级锁,myisam 是表级锁)

  • 35. mysql 其他的性能优化方式

  • 36. linux 系统日志在哪里看

  • 37. 如何查看网络进程

  • 38. 统计一个整数的二进制表示中 bit 为 1 的个数

  • 39. jvm 内存模型,java 内存模型

面试专题答案

设计模式面试专题以及答案.pdf

 

面试必备的悲观锁与乐观锁.pdf

 

SpringCloud 面试专题以及答案.pdf

 

 

Redis 面试专题以及答案上.pdf

 

 

Redis 面试专题以及答案下.pdf

 

 

SpringBoot 面试专题以及答案.pdf

《一线大厂 Java 面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】

 

SpringBoot 面试专题以及答案.pdf

 

SpringBoot 面试专题以及答案.pdf

SpringMvc 面试专题以及答案.pdf

 

 

并发编程面试专题以及答案.pdf

 

多线程面试专题以及答案.pdf

 

【阿里巴巴面试题目】

  • 40. 如何把 java 内存的数据全部 dump 出来

  • 41. 如何手动触发全量回收垃圾,如何立即触发垃圾回收

  • 42. hashmap 如果只有一个写其他全读会出什么问题

  • 43. git rebase

  • 44. mongodb 和 hbase 的区别

  • 45. 如何解决并发问题

  • 46. volatile 的用途

  • 47. java 线程池(好像之前我的理解有问题)

  • 48. mysql 的 binlog

  • 49. 代理模式

 

Logo

欢迎加入西安开发者社区!我们致力于为西安地区的开发者提供学习、合作和成长的机会。参与我们的活动,与专家分享最新技术趋势,解决挑战,探索创新。加入我们,共同打造技术社区!

更多推荐