今年的面试我个人感觉是非常不好的,没有准备好,况且之前一直在关注微服务,分布式中间件什么的,没有深究底层和源代码,面试的并不理想,目前已经入职,这里仅提供一些我面试中遇到的部分问题,不提供答案,虽然只提供面试题不写答案是很不地道的做法,但请理解我的初衷,如果你看了这些都不想动手去找答案,去理解分析,那你还不如不看来的爽快,还有就是我对这里的一些问题的理解也不是很充分,不想误人子弟。
一.Java基础
-
请介绍一下你自己?(说明一下为什么要把这个问题放在这里,你必须先介绍一下你的应聘职位,教育经历,工作项目经历.很多公司的面试官是极其不负责任的,事前并没有查阅你的简历,过去就是随便跟你怼,这样真是浪费彼此的时间)
-
接口和抽象类的区别是什么?
-
请描述一下集合框架体系以及他们的区别?(这里主要说说ArrayLIst,LinkedList,HashMap,HashSet等常用的工具,讲讲他们的区别和性能)
-
多线程了解吗?同步和异步的区别?同步方法和同步代码块分别如何使用?
-
请从代码层面和数据库层面描述一下锁?
-
并发包你用过吗?他在Java中的哪个包下?都有哪些常用的工具请简单介绍一下?
-
如何解决高并发问题?
-
给你100W条用户数据,你使用什么方式存储在数据库中效率最高?
-
一个类从创建到运行中间有哪些过程?(JVM的类加载机制)
-
JVM的内存模型了解么?简单聊一下?(Z...)
-
Cookie与Session的区别和联系?
-
算法和数据结构有看过吗?简单聊一下
二.Java框架
-
SpringMVC中后端如何接受前端传递的List数据?
-
SpringMVC的工作流程是什么?
-
SpringMVC中使用的设计模式有哪些?分别描述一下
-
Spring中的事务管理?
-
简单介绍一下ORM?
-
MyBatis中如何解决SQL注入的问题?(我工作中基本上都是注解式开发,前端传递的数据在Service封装校验完毕,再交给持久层处理,所以这一块我回答的让面试官并不满意)
-
MyBatis中如何判断数据为null的情况?
-
MyBatis和JDBC的区别和联系?(要谈到性能效率问题)
-
Dubbo用过吗,简单介绍一下?
-
Dubbo底层了解吗,请描述一下?(架构?协议?设计艺术?)
-
Dubbo如果没有了Zookeeper的支持,如何手工实现?(就我目前的知识储备来看,临时无解)
-
Dubbo的内容提供者和服务消费者在配置文件中如何配置?(我居然也没回答出来)
-
Dubbo的分组用过吗?为什么要使用分组?
-
SpringBoot和Dubbo的区别是什么?(网贴中很多都是谈论SpringCloud和Dubbo的区别,这里说明一下,SpringCloud是基于SpringBoot的,这样问没问题)
-
SpringCloud中常用的服务组件有哪些?各自的业务场景是什么?(Eureka、Fegin、Ribbon、Zuul、Hystrix?)
-
SpringCloud中常用的注解有哪些?分别有什么作用?
-
SOA和微服务架构的区别是什么?
三.中间件
-
集群中Session共享如何配置?
-
Redis和Memcache的区别是什么?
-
Redis和MongoDB的区别是什么?业务场景说一下?
-
Redis的持久化方式有哪些以及他们的区别?
-
用户数据为什么要用MySQL存储而不用MongoDB?
-
MQ用过吗?业务场景说一下?
四.前端
-
JavaScript中如何取出一个Class中的值?有哪几种方法?
-
前端数据如何跟后端交互?
-
如何解决跨域问题?
-
Vue中跟后端通信的常用组件有哪些?
-
前后端分离如何保持用户的登录状态?
-
Freemarker如何进行静态化?
五.运维
-
Nginx有哪些常用的模块,简单说明一下?(SSL?Proxy?Log?)
-
Nginx如何配置负载均衡?
-
Nginx如何配置静态资源访问?
-
Nginx反向代理的系统中,如何在服务容器中获取用户真实IP?(电话面试,不知道)
-
Linux中查看日志有哪几种方式?
-
如何进行热部署?(布吉岛啊)
六.开发工具
-
Maven中如何依赖一个工具包?
-
Maven中如何解决jar包冲突?
-
Git中如何进行版本回滚?回滚到指定版本号
-
Git初始化一个仓库之后如何将已有的项目代码上传?
-
Git如何合并开发分支?
-
Jenkins中常用的插件有哪些?
-
你以往公司的项目部署流程是什么?
结束语:
这次的面试总结了一点就是,底层很重要,基础很重要,我个人涉猎比较广泛,喜欢玩的技术很多,但是发现很多都不了解底层,实属惭愧,去了两家大公司,浪费机会了/难过。吐槽的一点就是,现在的公司,就算你面的很好,聊的很愉快,他们也让你回去无限期的等通知,不会考虑到一个求职者的不易。顶着太阳,冒着雨坐了1个多小时的公交去面试,结果什么回应都没有。当然也有遇到好的面试官,会给你指出你的不足,给你讲解技术点。