2019/10/3014.00有赞一面
昨天上课接到有赞面试官的电话,约到今天面试,已经投了一个多月了,现在应该是补录了吧,听说有赞面试很难,哎,难也要上啊
进入正题========================================================================================:
简单的自我介绍:2分钟介绍完自己,当然也就是学的一些课程,加上自己自己学java等一些东西吧,顺便提了一下两个项目
面试官:听你说项目中用到了SpringSecurity,来说一下SpringSecurity是如何加密的,SpringSecurity有哪些组件?
我:就说了,我在项目中是如何进行授权登陆的,组件不知道(耶,第一个不知道)
面试官:redis选举知道吗?说一下?
我:不知道
面试官:redis的AOF和RDB说一下?
我:RDB是以快照的形式进行备份,然后就把数据持久化到磁盘上,AOF没配置过,不知道(唉。。。。。。。。。)
面试官:如何进行快照的?为什么快照就可以把数据快照到本地?
我:不知道
面试官:说一下redis的击穿与雪崩
我:说了redis击穿和雪崩,说了解决的方法
面试官:主从复制了解吗?说一下
我:我以MySQL的主从复制开始讲,说了建立一个Cluster,和Slave从库,然后读从库,写主库,每次先从从库开始读取,主库如果写了,从库和主库之间通过一个IO线程来把主库的SQL语句日志读到从库中,然后从库再执行一遍就行了,面试官说让我说的再具体一点,让我重新说,我又说了一遍,面试官好像不满意,又让我重新说,我又说了但是,,,,唉,我不知道(面试官听不下去了,说好,下一个)
面试官:说一下SpringCloud和Dubbo的区别(因为我第二个微服务项目用的是SpringCloud,阿里面试官也问过我这个问题)
我:简单说了一下,然后又追问了zookeeper的选举策略是如何选举的?我不知道
面试官:来说一下Spring的几个问题,说一下BeanProcessor?
我:纳尼?我说看Spring源码的时候了解过BeanProcessor后置处理器,巴拉巴拉胡说了一同
面试官:说一下Spring注入Bean都有哪些方式?
我:Set注入、构造方法 注入、工厂方法注入,说了set注入时的属性的名称和set驼峰命名有关系(这也是刚想起,也不知道为啥脑子出现这个,反正就说了)
面试官:说一下Spring的IOC和AOP
我:(嘻嘻)给它说了一下IOC,然后说了自己对AOP的理解,(之前跟视频看过一下AOP源码)
面试官:说一下java内存模型(这下我很明白,他问的是java内存模型)
我:就说了工作内存和主内存那些事,当然会讲到volatile了,也就说了一下volatile保证可见性,根据内存屏障来保证
面试官:如何保证的,如何根据内存屏障,禁止指令重排序的?
我:不知道
面试官
面试官:说一下数据库吧,了解死锁吗?说一下。
我:我就说了死锁,也就是死锁的条件和如何打破死锁
面试官:知道活锁吗?
我:不知道。。。。。。。。。(我是个弟弟)
面试官:JVM内存模型和双亲委派模型
我:JVM巴拉巴拉,,,,,,说了一通(深入理解java虚拟机一定要看10遍,给个位应届的毕业生),双亲委派模型,说了类加载器的那个结构,以及为何那样设计,最后又问了类的加载机制
面试官:说一下JVM的监测工具
我:jstat和jps,就对这两个清楚点,说了一下
面试官:如何拼接字符串的?
我:+、还有就是append了,面试官又问我append在哪个类中,我忘了(在StringBuffer中)
面试官:StringBuffer和StringBuilder有什么区别?
【有赞一面】我:StringBuffer是线程安全的,StringBuilder是线程不安全的,面试官又问,你确定吗?,我毫不犹豫就说确定,然后又说了和String的区别
面试官:说一下事务的隔离级别?
我:巴拉巴拉说一下,就是那四个隔离级别举例,以及会产生的问题
面试官:如何用这些事务?事务的传播特性
我:我当成了如何开启这些事务,就乱说了一通,这里就不仔细说了,就是这么个问题。。。。。。。算了,我不知道(我都ben了),事务的传播特性今天写博客现在才想起来当时忘了说
面试官:数据库用的哪个?(我用的MySQL5.6)
面试官:说一下数据库索引的底层
我:B+树说了一下下(唉,算了就自欺欺人的说B树了)
面试官:说一下MyIsam和Innodb的区别?
我:说了我知道的几个区别,好像没说完(面试官不满意,感觉我的回答太片面)
面试官:说一下 Innodb的四个特性?
我:不知道
面试官:知道数据库都有哪些锁?
我:(之前问的那么深,问我数据库锁,那我岂不是凉凉?)
我:我对多线程的锁挺熟悉的
面试官:那你讲一下
我:讲了synchronized和reentrantlock这两个锁,当然都是同步锁
面试官:什么是可重入锁?
我:刚说的这两个都是可重入锁,就是当你获取到这个对象的锁后,内部还可以继续获取这个对象的锁,不需要再从最外层往里获取
我:说了synchronized的底层,就是JVM层面的,说了同步方法和同步块的区别(在底层指令上的区别,前几天刚看)
我:说了volatile,就举例子,说到单例模式双端检测(应为我对这个熟悉,为什么要加volatile)
面试官:说一下synchronized1.8的特性的改动
我:不知道
面试官:你还有问我的吗?
我:您对我以后学习有什么建议吗?
面试官:就像你刚才说的那样,每个问题要知其所以然,多看看源码(中间和面试官缓和下气氛,就说到了我学习方式的,以及如何去学这些框架或者其他知识点的)
我:我没有问题le
面试官:那今天的面试就到这里吧(我知道这样就结束了,没有后续说可能会有hr联系你,当然我也不知道下次是谁会给我打电话,所以说肯定是凉了,但是我还是想再来一次有赞的二面,哪怕二面凉)
ps:还有一个jdk1.8的新特性什么问题,我想不起来了(jdk1.8新特性是重点)
推荐阅读
- 程序员|【高级Java架构师系统学习】毕业一年萌新的Java大厂面经,最新整理
- linux笔记|linux 常用命令汇总(面向面试)
- jvm|【JVM】JVM08(java内存模型解析[JMM])
- 面试|我经历的IT公司面试及离职感受(转)
- android-面试|我经历的IT公司面试及离职感受
- Java|一个月内面了30家企业,不断对比薪资,我从18K变成了38K
- vue|Vue面试常用详细总结
- java人生|35K 入职华为Java开发那天,我哭了(这 5 个月做的一切都值了)
- Android|年后备战金三银四(Android面试吃透这一篇就没有拿不到的offer......)
- java|后悔没有早点遇到它 , 直接从 12K 涨到了 30K