面试题总结 —— JAVA高级工程师

article/2025/8/20 15:40:22

面试题总结——JAVA高级工程师

近期考虑换工作的问题,于是投简历面试,面试5家公司的高级Java工程师,有4家给了我offer,想着总结一下面试经验,方便最近正在寻求机会的你们

 

一、无笔试题

 

不知道是不是职位原因还是没遇到,面试时,都不需要做笔试题,而是填张个人信息表格,或者直接面试

 

 

二、三大框架方面问题

 

1、Spring 事务的隔离性,并说说每个隔离性的区别

解答:Spring事务详解
 

2、Spring事务的传播行为,并说说每个传播行为的区别

解答:Spring事务详解
 

3、hibernate跟Mybatis/ ibatis 的区别,为什么选择?

解答:Hibernate与Mybatis的比较
 

4、Struts跟Spring mvc的优缺点,让你选会如何选

解答:Spring MVC 与 Struts的区别
 

5、简单说说Spring 事务机制

解答:Spring事务机制
 

6、Spring 4.0新特性

解答:Spring4新特性

 

 

 

三、负载均衡、集群相关

1、weblogic 负载均衡的原理和集群的配置

解答:a、WEBLOGIC负载均衡原理    b、负载均衡和集群的配置(参考)
 

2、Nginx+Tomcat+Redis实现负载均衡、资源分离、session共享 

解答:配置参考
 

3、nginx配置文件详解——nginx.conf

解答:Nginx配置文件详细说明

 

 

 

四、项目优化相关

1、web如何项目优化

解答:这个我整理过一次,web项目性能优化(整理)
 

2、单例模式有几种? 如何优化?

解答:单例模式的7中用法
 

3、简单说说线程池的原理和实现

解答:线程原理及实现

 

 

 

 

 

五、并发和安全方面

1、项目并发如何处理?(我们是web项目)

解答:高并发量网站解决方案,另外,还有数据库乐观锁,数据库读写分离、使用消息队列、多用存储过程等等
 

2、简单说说功能权限存在的水平权限漏洞和垂直权限漏洞的场景和解决办法(因为我们目前权限级别就是功能权限)

解答:
A、水平权限漏洞,如下图




假设机构有 用户A和用户B 两个用户,其中A有1、2和3权限 ,  用户B有 2 和3 的权限,这时候假设用户B 知道1,并给自己添加1的权限,这时候就是水平权限漏洞。
目前解决办法:1、限制入口,让用户B无法编辑自己的权限   2、对用户B无法进行向上扩展。最根本的解决办法是深入到数据权限
解答:水平权限漏洞和解决办法


B、垂直权限漏洞
解答:垂直权限漏洞案例和解决方案
 

3、平台上的图片如何防盗链

解答:http下载防盗链原理:http协议的字段referer记录来实现
 

4、如何区分上传的图片是不是木马?

解答:1、看上传的图片后缀  2、如何后缀是篡改的,那么每个文件有个魔术数字  文件上传-魔术数字
 

5、消息队列的原理和实现

解答:1、消息队列原理     2、深入浅出 消息队列 ActiveMQ

 

 

 

 

 

六、数据库方面

1、mysql查询字段区不区分大小写?

解答:不区分,哪怕值也不区分(我当时还反问了,区不区分大小的应用含义有哪些,面试官没说得出来)
 

2、简单说说数据库集群和负载均衡、分布式(我不懂这块)

解答:数据库负载均衡和集群参考 ,参考2
 

3、存储过程的结构和优点

解答:大概结构  
存储过程的优缺点
 

4、触发器的原理和作用

解答:参考

 

 

 

 

 

 

大体就这些,还有一些忘了,等记起来再补充,或者其他兄弟姐妹们遇到了,也可以私聊或者回复给我,希望能帮助到大家~  

 

个人博客:我的博客

 

 


http://chatgpt.dhexx.cn/article/OsjWaKES.shtml

相关文章

中高级Java程序员,你不得不掌握的基本功,挑战20k+

文章目录 1 前言2 自我介绍3 Java SE3.1 Java访问控制修饰符3.2 Java中抽象类与接口有何区别?3.3 Java中super关键字与final关键字3.4 final修饰的对象,有几种初始化方式3.5 Java中方法的重载(Overload)与方法的覆盖(O…

高级JAVA程序员必备:必看书籍清单

前言 经常有粉丝私聊我,有没有JAVA的好书推荐,今天特意就写一篇,有需要自取。 PC端左侧加我微信,进社群,有送书等更多活动! 《Java核心技术(Core Java)》 这本书就像一张高精地图…

Java-高级技术(一)

1、Stream 流 1.1、Stream 流的概述 在Java 8中,得益于Lambda所带来的函数式编程, 引入了一个全新的Stream流概念。目的:用于简化集合和数组操作的API。 代码演示 import java.util.ArrayList; import java.util.Collections; import java.…

JAVA高级知识点整理

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言String字符串类String可变字符串StringBuilder可变字符串与String之间的转换 RunTime类概述特点使用 Data类方法 SimpleDateFormat类方法 包装类特点字符串与原…

java高级(javaAdv)

一、String字符串 String 是一个类,属于引用类型。 Java 程序中一切使用 "" 引起来的内容,都是这个类的实例,称为字符串对象。 字符串定义后是一个常量 ,值不可更改。字符串 实际是一个字符数组 。 二、 String 类使…

各种编程语言名称的来历

写了那么多代码,你知道你用的编程语言为什么叫那个名字么? 下面整理了 TIOBE 2017年3月份前十语言的名称由来(本月Swift首次进入TIOBE指数前10名!) Java 任职于太阳微系统(SUN)的詹姆斯高斯林等人于1990年代初开发Java语言的雏形…

马上七夕到了,用各种编程语言实现10种浪漫表白方式

目录 1. 直接表白:2. 七夕节表白:3. 猜心游戏:4. 浪漫诗句:5. 爱的方程式:6. 爱心Python:7. 心形图案JavaScript 代码:8. 心形并显示表白信息HTML 页面:9. Java七夕快乐:…

各种编程语言的演变

关注、星标公众号,不错过精彩内容 素材来源:21ic电子网 编辑整理:strongerHuang 学编程的过程中,总是有小伙伴纠结我到底是该学C语言呢?还是Python呢?或者学Java? 那到底为什么编程需要这么多编…

plc编程语言是c语言吗,PLC各种编程语言特点你了解多少?

原标题:PLC各种编程语言特点你了解多少? 编程语言种类很多,各有各的优势,语句表和指令表类似,是编程语言的一种,在PLC中应用比较普遍,也是一种高级编程语言,PLC中语句表、梯形图、SC…

各种编程语言分类

计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序. 翻译的方式有两种:一个是编译,一个是解释。 编译型语言写的程序执行之前,需要一个专门的编译过程,把程…

各种编程语言的应用C/C++/Python/Java/JavaScript

各种编程语言的应用 (1)C语言 C语言是面向过程的,数据与算法分开。它的重点在于算法和数据结构。 优点:结构化编程语言,层次清晰,可以嵌入编程,可以跟硬件打交道,作底层开发。 缺点&…

html网页制作特效代码,超全html网页制作特效代码.doc

超全html网页制作特效代码 HTML特效代码1。忽视右键 或 2。加入背景音乐 IE: NS: *.mid你的背景音乐的midi格式文件 3。简单的window.open方法 οnclick"javascript :window.open(文件路径/文件名,newwindow, toolbarno,scrollbarsyes,resizableno,top0,left0, width400,h…

抖音爱心特效代码

这是效果 这代码文件的百度网盘链接: 链接:https://pan.baidu.com/s/1uZmPcoesCifI5GqsT8NeOQ 提取码:1234 第一步新建文本文件,命名为loveme,随便写 打开文本文件把最下面代码复制到txt文件里面,把第4行和…

爱心特效代码

创建一个空文件夹 随意个地方创建空文件夹都会吧 在新创建的文件夹里创建个记事本 右键创建文本文档都会吧 代码全部复制到新建的文本文档里 切记保存 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD><TITLE…

HTML3D立体城市特效代码

HTML3D立体城市特效代码 鼠标可以控制“行走”方向&#xff0c;立体性很强 index.html代码如下 <!doctype html> <html> <head> <meta charset"utf-8"> <title>3D城市</title><style> html {overflow: hidden;touch-act…

HTML-特效代码大全

HTML特效代码大全&#xff08;一部分## 标题&#xff09; HTML特效代码 1。忽视右键   <body οncοntextmenu“return false”>   或   2。加入背景音乐   IE:   NS:     .mid你的背景音乐的midi格式文件 3。简单的window.open方法   <a href"#"…

html语言闪烁特效代码,css3 文字闪烁特效代码

今天给大家分享几个文字闪烁特效代码,纯css3代码实现,对于新手小伙伴值得拿来学习一下。 文字闪烁特效一 通过改变透明度来实现文字的渐变闪烁,代码如下: 文字闪烁:闪烁效果 .main{color: #666;margin-top: 50px; } /* 定义keyframe动画,命名为blink */ @keyframes blink…

html canvas 烟花 特效代码

代码如下&#xff1a; <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><title> 真实烟花</title><style>body {padding: 0;}canvas {display: block;}</style> </head><body>…

html星空代码在线,怎么操作html星空特效代码

html不是一种编程语言&#xff0c;而是一种标记语言 &#xff0c;是网页制作所必备的。这些代码式的专业语言我们在普通的工作中运用的非常少&#xff0c;它的通用性可以把存放在一台电脑中的文本或图形与存放在另一台电脑中的文本或图形方便地联系在一起&#xff0c;形成有机的…

HTML龙卷风特效代码

今天&#xff0c;我给大家带来了短视频平台上超火的HTML龙卷风特效代码&#xff0c;如下&#xff1a; <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>粒子漩涡特效</title> <style> html,body{ margin:0px…