提前批一面:
1.上来问spring的理解(因为项目上写了),说了ioc,aop,问是否用过aop?
2.spring事务了解吗?
3.ssh与ssm比较,各自优势?
4.mybatis缓存机制,一级二级
5.nio了解吗?
6.hashmap底层实现,因为我提到了coucurrenthashmap所以也问了我底层实现?这块答的比较细,包括jdk1.8与1.7的比较
,扩容机制,线程安全。
7.四次挥手,从状态来说。
8.https是什么?我回答了工作原理
9.线程池有了解吗?我回答了常用的几个线程池,包括newCachedThreadPool的弊端
10.类加载过程
11.单例模式
12.不完全二叉树的第九层有几个节点,在项目中用过哪些数据结构
13.linux的一些事儿
14.redis常保存哪些数据?答:热点性词汇,比如热搜。
15.tomcat底层看过吗?
16.有什么想问我的?
-----------------------------------------------------------------------------------------------------------------------------2018.9.12更
早就二面了,后来忘了更
二面总体很简单,而且和一面差不太多,但是不知道为什么最后挂掉。。
1.自我介绍
2.针对项目问了一下,项目比较水,就是SSM-CRUD,然后就是熟悉的套路,IOC和AOP
这里IOC要看你回答的是否足够好,是否能理解,每次回答这个问题,最后我都会说 IOC最大的好处就是改变了实现类而不改变调用者的代码
3.用过aop吗?用过,处理日志,登陆验证,都在项目中用到了
4.spring注入的方式?setter,构造器,注解,其实还有静态工厂
5.Java基础:关于Java集合介绍一下,map,collection有什么说什么,越多越好,我说了arraylist,linkedlist,hashset,treeset,hashmap,treemap,hashtable,currenthashmap,从底层原理,某些方法的实现,到是否线程安全,效率,以及某些应用场景,这块是面试中最常考的,尤其校招,重点hashmap,hash table,currenthashmap
6.排序算法,堆排,桶排,快排,说了桶排
7.MySQL事务隔离机制
8.jvm:类加载,双亲委派模型
9.多线程,常用线程池,还问了一个ThreadLocal,这里有一个坑,都知道这个方法是可以访问线程本身的变量副本,但这里有一个坑是每次调用完之后需要手动close,不然会导致服务器崩掉,因为项目中不止一个线程,每个线程无限的创建副本,会出现的情况是:你的项目上线了,前两个月没有问题,后面你的cpu飙升到99%(虽然没这么夸张),但需要注意
10.然后也问了二叉树,红黑树,
11.超简单的爬楼梯算法
12.关于多少×多少,最后结果有几个零,这种问题就是找2*5,因为所有偶数都能分出2,所以2的数量一定是远远多于5的,所以就只要找末尾有5的个数就好了,百度上很多这种题可以自己查查