第一次java后台开发面试,暴露了很多问题。
1、上来第一个问题,你了解java虚拟机吗?说说你对java虚拟机的理解。(直接懵了,只说了jvm跨平台和jvm试图跟踪每个被创建的对象)
2、简历说你会用spring sercurity,说说他的工作原理。(当时急了,就说了下原理,应该按照Header Payload Signature来说的)
3、说说spring的事务操作。(借用数据库事务说了,着重说了原子性,其实对这种框架的事务应该着重说一致性)
4、说说你项目里用的锁,和它们的工作原理。(说了互斥锁,条件锁,乐观锁,悲观锁)
5、接着就问了乐观锁和悲观锁的实现。(说反了,把悲观锁的实现说成乐观锁,面试官说了他们工作中的乐观锁,很巧妙,数据库里加了验证)
6、问了线程和进程。
7、问了tcp和udp。
8、情景题:数据库里是包含ABC三个字段的表,对ABC建立联合索引,一条只包含AC索引的查询语句,能不能查到数据库的这条记录。(我说了好久,能。面试官说,不能)
9、情景题:一个10万用户的后台,你怎样设计管理他们的权限。
10、问我除了ssm还会别的框架吗,答了MyBatis-Plus,简单讲了一下它的优势。
11、问了redis是单线程还是多线程?(送分题)
12、问了redis为什么单线程还效果好。(I/O复用;直接从缓存或者磁盘读取;不是多线程,避免了事物的隔离性挂起巴拉巴拉)
全部评论
(2) 回帖