后端开发面试自我介绍_Java后端面试总结
以下记录和总结一下近期面试时遇到的一些问题,供后期查阅,同时,希望对正在求职的小伙伴们有所帮助。
1.自我介绍
介绍突出以下几点:姓名、毕业院校、专业、熟悉的技术栈、做过的项目简介、自己在项目中做的工作、自己面试的岗位及自己的优势介绍。时间把控在35-60秒即可。
2.谈谈项目中自己印象深刻的地方
根据实际情况,自由发挥即可
3.谈谈项目中的核心点和难点
根据实际情况,自由发挥即可
4.谈谈你对RESTful API风格的理解,并根据业务设计一个接口
在前后端分离架构未出现之前,我们要开发WEB端的应用,更多是通过jsp或者模板引擎去实现,这样会有两个弊端:1.前后端代码混在一起,不利于后期维护; 2.前后端分工不明确。前后端分离的架构强调前端和后端各思其职,后端主要负责业务逻辑的处理,前端负责界面展示,前后端通过api去通信,RESTful API规定了api的一些约束和设计风格。我理解的是它主要体现在两个地方,1.每个url表示一种资源,体现在url语义明确,url中尽可能用名词去表示资源,我们对资源的增、删、改、查等操作,用HTTP头表示,比如POST、DELETE、PUT、GET等。2.url的返回格式统一,用xml或者json,我在开发中用的比较多的是json格式做返回结果,json格式中包括状态码、消息、数据体等字段。
5.cookie和session的区别
HTTP协议是无状态的,而我们业务中,有一些场景是需要记录用户状态的,比如登陆、购物车等,session和cookie用于做会话管理,记录状态信息。
区别:session保存在服务器端;cookie保存在客户端,
工作流程:第一次请求时,服务器端会生成session,并将sessionId通过cookie回给客户端,下一次请求时,cookie会携带sessionId给服务器端,服务器端通过比对sessionId确认用户。
6.数据库中的乐观锁和悲观锁
乐观锁:不给数据表加锁,任何事务都能够同时访问数据;实现时,我们通常在表中添加一列version或时间戳,version用的比较多,更新数据前,会获取version值,更新时,会判断当前行的version值是否和之前的version值相等,相等则更新,并且version值+1,不想等则不更新。优势:避免了加锁造成的吞吐量下降的问题,缺点:需要手动实现,仅作用于特定的业务场景。适用于读多写少的场景。
悲观锁:给数据表加锁,确保事务多数据的更新是有序的,像读锁、写锁、表锁、行锁等都是悲观锁。优势:保证了数据的安全性;缺点:并发大的情况下,其它事务获取不到锁,会影响我们系统的吞吐量。适用于写多读少的场景。
7.索引类型
8.MySQL中用到的数据结构及它们之间的区别
9.MyBatis中#和$的区别
10.MyBatis中的延时加载机制
11.SpringMVC的工作原理,描述代码中如何获取handler
12.介绍一下项目的部署架构(前台请求到访问数据库的中间流程)和技术栈
13.缓存击穿、缓存穿透、缓存雪崩
缓存击穿:
定义:大量并发请求在缓存服务器中未命中,转去数据库了,给数据库带来了访问压力
原因:缓存服务器,key过期了
解决方案:
1.根据业务场景,尝试设置热点数据永不过期。
2.双重检查锁(附伪代码)
if (null == getFromRedis()) {
lock;
if (null == getFromRedis()) {
getFromMysql();
updateToRedis();
}
unlock();
}
return getFromRedis();
优点:执行了一次MySQL查询,其余请求正常走Redis,缓解了MySQL的压力;锁粒 度小;
14.MySQL能实现分布式锁吗
15.MySQL最左匹配原则,最左匹配原则可能导致哪些情况下索引不会被命中?最左匹配原则的原因?
15.谈谈对AOP的理解
纵向编程比如继承类,实现接口等方式,解决不了的一些问题,可以通过横向编辑去解决
16.Redis是单线程的吗
17.JVM调优
18.JVM内存模型和垃圾回收机制
19.有没有遇到过线程池被撑爆的问题
20.Spring事务机制
总结:
1.要把面试官问的问题向你擅长的方向引导,把写在简历上的知识点学透彻
2.面对问题时,仔细分析问题,然后顺着分析的思路摸索记忆,找到答案(ps:有时候一些东西本来知道,一时记不起来了,加上紧张的情绪,可能就回答不好问题)
3.回答问题时,尽量把自己都知道的点有条不紊地讲出来(毕竟有内容总比没有内容强)
后端开发面试自我介绍_Java后端面试总结相关推荐
- java助教面试自我介绍_助教面试自我介绍参考
助教面试自我介绍参考 助教面试自我介绍参考1 各位考官好,今天能够站在这里参加面试,有机会向各位考官请教和学习,我感到非常的荣幸.希望通过这次面试能够把自己展示给大家,希望大家记住我.我叫xx. 今年 ...
- 后端开发面试自我介绍_java开发面试评语
自我评价或是自我介绍(我是Java程序员) 你这里介绍的就挺好啊. 有个条理就行 我前段时间也总参加面试,也是做J2EE,我说下我自我介绍的思路: 1. 先介绍基本情况,哪里人,什么学校毕业在什么公司 ...
- java开发工程师面试自我介绍_Java程序员面试如何自我介绍HR这一关
匿名用户 1级 2013-01-09 回答 当面试考官随便地问你:"谈谈你自己的情况如何?"这是面试中的第一个问题.此刻,你应把在此之前所有紧张不安的情绪稳定下来.因为这个问题,应 ...
- java开发工程师面试自我介绍_Java程序员如何进行自我介绍
有简历,为何还要自我介绍? 一个常规的面试,寒暄之后面试官提出的第一个问题几乎千篇一律:"请您简单地做一下自我介绍".有些被面试者都会问:简历中情况已经写得很清楚了,这是否多此一举 ...
- java英语面试自我介绍_java的英文面试自我介绍
java的英文面试自我介绍 处在一个陌生场合时,常常需要我们进行自我介绍,通过自我介绍可以让别人认识自己.如何写出一个与众不同的自我介绍?以下是小编精心整理的java的英文面试自我介绍,仅供参考,希望 ...
- java英语面试自我介绍_java自我介绍的英文面试
自我介绍 是向别人展示你自己的一个重要手段,自我介绍 好不好,甚至直接关系到你给别人的第一印象的好坏及以后交往的顺利与否.同时,也是认识自我的手段.java自我介绍的英文面试,我们来看看. java自 ...
- 转专业计算机类面试自我介绍,转专业面试自我介绍
有些学生,上了大学学习了一段时间才发现更喜欢别的专业,可以提出申请,但是那要通过面试的自我介绍说服老师.以下是学习啦小编为大家整理的关于转专业面试自我介绍,给大家作为参考,欢迎阅读! 转专业面试自我介 ...
- 招聘计算机教师面试自我介绍,[教师招聘面试自我介绍]怎么在教师招聘时自我介绍...
[www.cddlwy.com--自我介绍] 范文 尊敬的各位考官.各位评委老师:能参加今天的面试,并向各位考官和评委老师学习,我很高兴.同时通过这次面试也可以把我自己展现给大家,希望你们能记住我,下 ...
- 转专业计算机的面试自我介绍,转专业面试自我介绍
转专业面试自我介绍 1.接到面试通知后,最好在家打个自我介绍的草稿,然后试着讲述几次,感觉一下. 2.自我介绍时首先应礼貌地做一个极简短的开场白,并向所有的面试人员(如果有多个面试考官的话)示意,如果 ...
- 事业单位招聘计算机类面试自我介绍,事业单位面试自我介绍范文2分钟|2019事业单位面试自我介绍范文...
[www.gpsvo.com--管理学] 事业单位招聘需通过四个流程,报名.文化考试.面试.体检和政审,今天小编就给大家来分享一下自我介绍指导,希望大家来收藏哦 事业单位面试经典自我介绍 我来自于湖南 ...
最新文章
- pycharm导入包
- 【SQL】SQL语句大全(XIMND导图梳理)
- 杭电oj1087最长递增子序列java实现
- Coding and Paper Letter(六)
- 【Python】Github上125k+Star的Python算法资料
- mysql正则提取字符串_mysql字符串查找截取与正则表达式的联合应用
- ubuntu 升级python3.5到python3.7,并升级pip3
- 后台拿webshell的常用方法总结
- java excel api及详细教程_针对Java Excel API及详细教程
- 软件工程六大设计原则总结,案例演示
- 非空约束 mysql
- php中显示不出来,图片显示不出来,但是数据库里有显示
- 计算机和信息系统安全保密管理规定,信息系统安全和保密管理制度
- 关于Lua的下载以及wlua、luac等文件的解释
- [详解] iphone手机备份、升级流程
- layui表单提交时出现一闪而过的验证信息的原因
- 区块链触手可及 复杂美BAAS平台
- 【学习笔记】VGG 网络结构
- 升级windows11的方法
- 浮躁与投机取巧 (干一行爱一行,学会沉淀)
热门文章
- 微信小程序二维码生成
- 【OTDR曲线工具箱】02 OTDR测量曲线查看
- MAC dmg转ISO 及命令安装启动U盘
- inode客户端连接成功上不了网_iNode的客户端部分常见问题
- 自己在inode客户端的大量问题(不断更新中)(2012-02-23 21:24 )
- pdf书籍笔记助手,BookxNote使用记录
- 微星GE60有线网卡Qualcomm Atheros Bigfoot Killer E2200 ethernet card在ubuntu下无法找到驱动的解决办法...
- 西门子PLC_s7-200免费学习视频教程
- Navicat安装配置
- AD14 如何设置PCB板框大小及形状