
面试
文章平均质量分 87
加班不秃顶
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
为什么要谨慎使用Arrays.asList、ArrayList的subList?
方法可以在一些简单的场合使用,比如快速声明一个集合,判断某个值是否在允许的范围内:但声明后不要再调用add等方法修改集合,否则会报异常。ArrayList的subList方法,返回的是原集合的一个子集合(视图),非结构性修改任意一个集合的元素的值,都会彼此影响,结构性修改原集合时,会报异常,结构性修改子集合时,会影响原集合,所以使用时要注意,避免程序错误或者异常。原创 2025-06-20 17:01:41 · 248 阅读 · 0 评论 -
Redis深入浅出【九】Redis的事务机制
Redis的事务提供了一种将多个命令打包,然后一次性、有序地执行的机制,它的原理是多个命令会被入队到事务队列中,然后按先进先出(FIFO)的顺序执行,并且事务在执行过程中不会被中断,当事务队列中的所有命令都被执行完毕之后,事务才会结束。原创 2025-06-20 16:57:38 · 592 阅读 · 0 评论 -
面试官:聊一下你对MySQL索引实现原理?
在数据库中,如果索引太多,应用程序的性能可能会受到影响,如果索引太少,又会对查询性能产生影响。所以,我们要追求两者的一个平衡点,足够多的索引带来查询性能提高,又不因为索引过多导致修改数据等操作时负载过高。InnoDB支持3种常见索引,我们接下来要详细讲解的就是 B+ 树索引,哈希索引,全文索引。原创 2025-06-17 20:35:23 · 750 阅读 · 0 评论 -
面试官:你了解CAS吗?有什么问题吗?如何解决?
CAS全称,比较与交换,是乐观锁的主要实现方式。CAS在不使用锁的情况下实现多线程之间的变量同步。内部的AQS和原子类内部都使用了CAS。需要读写的内存值V。进行比较的值A。要写入的新值B。只有当V的值等于A时,才会使用原子方式用新值B来更新V的值,否则会继续重试直到成功更新值。在Java中,CAS操作主要通过java.util.concurrent.atomic包中的类来实现。例如,AtomicInteger、AtomicBoolean、AtomicReference等。原创 2025-06-17 20:31:46 · 796 阅读 · 0 评论 -
Java面试官:Synchronized是怎么实现的?
可重入锁是一种特殊的互斥锁,它允许同一个线程在持有锁的情况下再次获取该锁。也就是说,同一个线程可以多次获取同一个可重入锁,而不会发生死锁。在 Java 中,synchronized关键字就是一种可重入锁。当一个线程使用synchronized修饰的方法或代码块时,它会获得该对象的锁。如果该线程在持有锁的情况下再次调用同一个对象的synchronized方法或代码块,那么它会再次获得该对象的锁,而不会等待其他线程释放锁。可重入锁的好处是可以避免死锁的发生。原创 2025-06-17 20:26:58 · 947 阅读 · 0 评论 -
【Spring Boot】Spring Boot Debug调试?
在使用spring-boot:run进行启动的时候,如果设置的断点进不去,要进行以下的设置。原创 2025-06-16 20:53:11 · 137 阅读 · 0 评论 -
【Spring Boot】Spring Boot 集成 Mybatis 实现双数据源?
这里用到了Spring Boot + Mybatis + DynamicDataSource配置动态双数据源,可以动态切换数据源实现数据库的读写分离。原创 2025-06-16 20:46:21 · 242 阅读 · 0 评论 -
Java面试:@Resource 和 @Autowired 的区别?
目前在项目中一般使用 @Resource,因@Resource是Java标准中的注解,更契合些。我们在IDEA中使用@Autowired注解时,IDEA会在@Autowired下打个波浪线,给你说是不推荐的。跟 @Resource 和 @Autowired 功能相似的注解。原创 2025-06-16 20:43:13 · 833 阅读 · 0 评论 -
Java面试:@Transactional 什么情况下会失效?
注解在 Spring 中用于声明式事务管理,但在某些场景下会失效。后调用。通过 AopContext 获取代理:((MyService) AopContext.currentProxy()).b()(需开启 @EnableAspectJAutoProxy(exposeProxy = true))。我更喜欢把逻辑写到另一个类中,然后再进行调用。默认只捕获 RuntimeException和 Error。若抛出 IOException等,事务不会回滚。若异常被 catch后未重新抛出,事务失效。原创 2025-06-16 19:30:41 · 898 阅读 · 0 评论 -
聊聊jvm的内存结构, 以及各种结构的作用!
定义:Java Virtual Machine,JAVA程序的运行环境(JAVA二进制字节码的运行环境)【下载】Java面试题、Java八股文、Java涨薪场景题(PDF文档)线程私有的,作为当前线程的行号指示器,用于记录当前虚拟机正在执行的线程指令地址。定义:每个线程在创建的时候都会创建一个虚拟机栈,其内部保存一个个的栈帧(Stack Frame),对应着一次次 Java 方法调用,是线程私有的,生命周期和线程一致。原创 2025-06-12 21:16:32 · 843 阅读 · 0 评论 -
【Redis】认识Redis集群!
Redis单实例的架构,从最开始的一主N从,到读写分离,再到Sentinel哨兵机制,单实例的Redis缓存足以应对大多数的使用场景,也能实现主从故障迁移。但是,在某些场景下,单实例存Redis缓存会存在的几个问题:写并发:Redis单实例读写分离可以解决读操作的负载均衡,但对于写操作,仍然是全部落在了master节点上面,在海量数据高并发场景,一个节点写数据容易出现瓶颈,造成master节点的压力上升。原创 2025-06-12 21:11:47 · 1001 阅读 · 0 评论 -
【Redis】Redis探秘Sentinel(哨兵模式)!
Redis的高可用机制有持久化、复制、哨兵和集群。持久化:持久化是最简单的高可用方法(有时甚至不被归为高可用的手段),主要作用是数据备份,即将数据存储在硬盘,保证数据不会因进程退出而丢失。复制:复制是高可用Redis的基础,哨兵和集群都是在复制基础上实现高可用的。复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。缺陷:故障恢复无法自动化;写操作无法负载均衡;存储能力受到单机的限制。哨兵实现了主从复制中故障的自动化恢复。缺陷:写操作无法负载均衡;存储能力受到单机的限制。原创 2025-06-12 21:10:09 · 975 阅读 · 0 评论 -
【Redis】Redis究竟为什么这么快?
多路I/O复用模型是利用 select、poll、epoll 可以同时监察多个流的 I/O 事件的能力,在空闲的时候,会把当前线程阻塞掉,当有一个或多个流有 I/O 事件时,就从阻塞态中唤醒,然后程序就会轮询一遍所有的流(epoll 是只轮询那些真正发出了事件的流),并且依次顺序的处理就绪的流,这种做法就避免了大量的无用操作。在redis的多线程模式下,获取、解析命令,以及输出结果着两个过程,可以配置成多线程执行的,因为它毕竟是我们定位到的主要耗时点,但是命令的执行,也就是内存操作,依然是单线程运行的。原创 2025-06-04 09:30:00 · 680 阅读 · 0 评论 -
CAP与BASE:分布式系统设计的灵魂与妥协!
CAP也就是Consistency(一致性)Availability(可用性)Partition Tolerance(分区容错性)这三个单词首字母组合。CAP 理论的提出者布鲁尔在提出 CAP 猜想的时候,并没有详细定义三个单词的明确定义。因此,对于 CAP 的民间解读有很多,一般比较被大家推荐的是下面这种版本的解读。一致性(Consistency) : 所有节点访问同一份最新的数据副本可用性(Availability): 非故障的节点在合理的时间内返回合理的响应(无论是响应成功或失败)。原创 2025-05-29 10:30:00 · 879 阅读 · 0 评论 -
解密ZAB协议:Zookeeper一致性的核心实现!
ZAB(ZooKeeper Atomic Broadcast 原子广播) 协议是为分布式协调服务 ZooKeeper 专门设计的一种支持崩溃恢复的原子广播协议。在 ZooKeeper 中,主要依赖 ZAB 协议来实现分布式数据一致性,基于该协议,ZooKeeper 实现了一种主备模式的系统架构来保持集群中各个副本之间的数据一致性。ZAB 协议包括两种基本的模式,分别是。原创 2025-05-28 19:59:06 · 890 阅读 · 0 评论 -
Java场景题:电商平台中订单未支付过期如何实现自动关单?
日常开发中,我们经常遇到这种业务场景,如:外卖订单超 30 分钟未支付,则自动取订单;用户注册成功 15 分钟后,发短信息通知用户等等。这就是延时任务处理场景。在电商,支付等系统中,一设都是先创建订单(支付单),再给用户一定的时间进行支付,如果没有按时支付的话,就需要把之前的订单(支付单)取消掉。这种类以的场景有很多,还有比如到期自动收货,超时自动退款,下单后自动发送短信等等都是类似的业务问题。原创 2025-05-28 18:40:14 · 526 阅读 · 0 评论 -
Java面试:Redis如何实现高并发场景下的计数器设计?
大部分互联网公司都需要处理计数器场景,例如风控系统的请求频控、内容平台的播放量统计、电商系统的库存扣减等。传统方案一般会直接使用,这是最简单的方式,但这种方式在生产环境中会暴露严重问题:java// 隐患示例// 若未设置TTL,key将永久驻留内存INCR 有,即当 Redis 检测到目标 key 不存在时,会,再执行递增操作。原创 2025-05-28 18:34:33 · 902 阅读 · 0 评论 -
4年Java开发经验,应聘薪资16K却被秒杀,这是经历了些什么?
现在正值大家跳槽面试的高峰时期,今天小编给大家分享一个案例:4年Java开发经验,应聘薪资16K没过...咱先看这位老弟的简历基本情况:xx,26岁,毕业于青岛理工大学,有4年的开发经验…专业技能: 熟悉Sping 了解SpringMVC、SpringBoot、 Mybatis 等框架、了 解SpringCloud微服务 熟悉常用项目管理工具: SVN、 GIT、MAVEN、 Jenkins 熟悉 Nginx、tomcat 等的调优 熟悉多线程、并.原创 2021-08-27 21:11:20 · 1409 阅读 · 1 评论 -
偶得这份“25大专题Java高分面试指南”,秋招跳槽有望了!
面试造火箭,工作拧螺丝!偶得朋友赠送的这“25大专题Java高分面试指南”:Elasticsearch、微服务、Linux、JavaOOP、集合/泛型、Mysql、Redis、JVM、MongoDB、IO与NIO、反射、Spring、Spring Boot、序列化、Kafka、ZooKeeper、算法、注解、MyBatis、Dubbo、多线程、RabbitMQ、Dubbo 、数据结构、Memcached、Spring Cloud等等,内含1000+Java个专题精品面试问题并附有详细的答案解读,秋招跳槽有望原创 2021-07-05 14:31:55 · 248 阅读 · 1 评论 -
真香!180页100+题15W+字解析的《Java高级面试指南》,果断收下!
近期有很多朋友在考虑跳槽,“面试造火箭,工作拧螺丝”这话说的十分吻合他们的现状!而说到准备面试,那是真不容易,趁着空挡我也收集了不少Java高级面试资源!而这180页100+题15W+字解析的《Java高级面试指南》更是深得我心,100+题包含:消息队列、Redis缓存、MySQL的分库分表读写分离、高并发系统设计、分布式、高可用、SpringCloud微服务架构等的内容,每一道题皆从面试官的角度分析题意,然后再附带完整的解析,先看题目,答不上的再翻阅答案!注意:考虑到篇幅原因,这份《Java原创 2021-06-22 13:21:02 · 401 阅读 · 2 评论 -
Alibaba5轮视频面:同事+组长+主管+项目+HR,收割Java岗offer!
前言前段时间有幸被阿里的一位同学内推,参加了阿里巴巴Java岗位的面试,本人19年双非本科软件工程专业,目前有一年半的工作经验,面试前就职于一家外包公司。如果在自己本人拿到offer之前,如果有人告诉我一年工作经验可以直接从外包进阿里,我肯定是不信。但是真的发生在自己身上,真的觉得非常非常幸运与不可思议。Alibaba的这次面试总共有五面,包括:第一轮电话面试(同事面):将近1h20min,主要是介绍项目与基础知识 第二轮视频面试(组长面):将近1h,同样也是介绍项目与基础知识 第三轮视频面原创 2021-06-18 14:05:05 · 490 阅读 · 2 评论 -
美团一面凉凉,MySQL+Java+Redis+算法+网络+Linux等一个都讲不清,悲催!
面试大概九十分钟,问的东西很全面,需要做充足准备,就是除了概念以外问的有点懵逼了(呜呜呜~)。回来之后把这些题目做了一个分类并整理出答案(强迫症的我~狂补知识~)分为MySQL+Java+Redis+算法+网络+Linux等六类,接下来分享一下我的这次美团一面面经++一些我的学习笔记。注意注意:需要小编整理的MySQL+Java+Redis+算法+网络+Linux等六类面试答案、学习笔记、思维脑图(xmind)的朋友可以点击下面的链接进去免费领取01 MySQL相关1.1 美团面..原创 2020-05-13 13:34:09 · 561 阅读 · 0 评论 -
最新Java岗面试清单:分布式+Dubbo+线程+Redis+数据库+JVM+并发
最近可能有点闲的慌,没事就去找面试面经,整理了一波面试题。我大概是分成了Java基础、中级、高级,分布式,Spring架构,多线程,网络,MySQL,Redis缓存,JVM相关,调优,设计模式,算法与数据结构,并发,Linux等15个小模块。每个小模块文章里估计就只能只给出部分的面试题目,不然要是全部写出来,篇幅不够呀。而且还有相应的答案,太难了,所以直接给大家提供最完整的答案解析文档,点击这里一、Java基础什么是 Java 程序的主类?应用程序和小程序的主类有何不同? 构造器.原创 2020-07-31 17:47:14 · 315 阅读 · 0 评论 -
三年Java开发,刚从美团、京东、阿里面试归来,分享个人面经!
美团一面:1、ConcurrentHashMap实现原理2、HashMap实现原理3、锁的实现原理4、synchronized和重入所实现原理以及区别5、一个char[]数组,里面有空格,以&结束。6、jvm内存模型,都存什么。以及垃圾回收算法,垃圾回收器。7、内存溢出的场景8、设计模式,以及自己使用的场景。9、Sping的AOP实现原理,以及对象生成方式的种类,单例的还是原型的。二面:1、分布式锁。2、逐层遍历树。3、原子类实现..原创 2020-10-16 17:17:03 · 1809 阅读 · 12 评论 -
“HUAWEI”4面技术5面HR,基础-项目-技术,Offer擦肩而过?
大厂面试真题向来是求职者的最佳练兵场,华为在Java开发工程师招聘中有哪些技术性考察和倾向?那今天咱就给大家分享一下近期的华为5面面经!注:以下所分享的华为面试问题,相关的答案已整理出,且为了更加方便给想要进大厂的小伙伴一些帮助,我还专门准备了全套的《Java面试合集》(文末见),全都是一丢一丢的收集整理纯手打出来的——并收整在【我的学习笔记大全】华为Java一面· 1H闲聊偏多,问的技术性问题比较基础 ·简单说说面向对象的特征以及六大原则 ·谈谈final、f.原创 2020-10-19 21:29:36 · 846 阅读 · 10 评论 -
牛掰!“基础-中级-高级”Java程序员面试集结,看完献出我的膝盖!
Java基础(对象+线程+字符+接口+变量+异常+方法)面向对象和面向过程的区别? Java 语言有哪些特点? 关于 JVM JDK 和 JRE 最详细通俗的解答 Oracle JDK 和 OpenJDK 的对比 Java 和 C++的区别? 什么是 Java 程序的主类?应用程序和小程序的主类有何不同? Java 应用程序与小程序之间有哪些差别? 字符型常量和字符串常量的区别 构造器 Constructor 是否可被 override? 重载和重写的区别? Java 面向对象编程三原创 2020-06-10 16:17:38 · 3017 阅读 · 3 评论 -
全网独家的“MySQL高级知识”集合,骨灰级收藏,手慢则无!
MySQL为什么这么重要?MySQL为什么这么重要?是不是一脸问号??什么都不要说了,先来看张图...在所有数据库中,MySQL 排在第二,而 NoSQL 中 MongoDB 排在第一,你可能在想是不是有必要把 Oracle 也学习下,别着急,再看张图全球访问量最大的 20 家网站,他们分别使用了什么数据库呢,绝大多数使用 mysql,有两个完整live.com 和 bing 使用的是 mssql,并不是他们使用不了 mysql,而是他要支持自己的数据库。在...原创 2020-06-16 14:02:37 · 2427 阅读 · 1 评论 -
虚惊一场!因为一个“Redis”,我差点卒于美团三面?
Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。现在对于一个Java程序员来说,对于 Redis 技术知识的掌握已经成为必须的技能。而我们在面试过程中,总是会被问到Redis相关的知识,什么缓存、雪崩等等之类的。这次我就差点卒于美团三面,就是因为一个Redis卡壳了......美团常问Redis... 为什么要用缓存? Redis 常见原创 2021-05-18 14:26:16 · 199 阅读 · 1 评论 -
应届女生美团Java岗4面,一次性斩offfer,我受到了万点暴击
前几天得知我的某个可爱的应届小学妹一次性拿下美团Java岗4面offfer,导致我越发觉得自己真心有点菜鸡,我弱小的心灵受到了一万点暴击!学妹自述:美团,是在boss上投的简历,之前也投过一次,简历都没通过删选,后来让同学帮忙改了一下简历,重新投另一个部门,获得了面试机会。4月23日,中午HR打电话过来预约了下午4点半面试,说会在线写代码,让我准备好网络环境。结果5点半还没打电话过来,被放鸽子。与hr重新沟通过后,确定周下一下午再面,可是跟hr沟通预约这一套貌似在美团并没有什么用。.原创 2021-05-17 13:18:52 · 202 阅读 · 1 评论 -
Offer差点无缘?HUAWEI 4面技术5面HR,踩线挺过!
大厂面试真题向来都是各大求职者的最佳练兵场,而今天小编带来的便是“HUAWEI”面经!这是一次真实的面试经历,虽然不是我自己亲身经历但是听当事人叙述后便会深有同感(因为我朋友差点就与offer擦肩而过了,总共4面技术5面HR,真的好艰难)。为此,我也将这面经整理出来分享给每位程序员(媛)朋友做一个参考(且有向朋友取经,并在文末分享),可知“HUAWEI”在Java开发工程师招聘中有哪些技术性考察和倾向!HUAWEI-Java一面-1H闲聊偏多,问的技术性问题比较基础简单说说面向对象.原创 2021-02-04 18:12:47 · 752 阅读 · 0 评论 -
2020最后一次Java面试,快手三面一轮游,如今已拿意向书!
2020最后一次Java面试,我去了快手。快手的面试挺有挑战性的,而且还特别有意思,感觉啥都能问到。(二面是10天前约的面试,差点要忘了)然后是HR面,前天我就收到offer。一面二面啥的我都忘记具体的了,就简单的总结一下1 基础为什么 Java 中只有值传递? int 范围?float 范围? hashCode 与 equals,什么关系? String StringBuffer 和 StringBuilder 的区别是什么?String 为什么是不可变的? Java 序列化中原创 2021-01-06 17:45:53 · 1233 阅读 · 5 评论 -
秋招100天,成功收走今日头条、腾讯、蚂蚁金服等4个offer,今天献上我的面试宝典一份!
前言一直想着写面筋,结果一直拖延症发作没写,前几天蚂蚁也发offer了,今年春招找实习也差不多告了一段落了。今年我主要投的是成都这边的后台开发岗位,包括头条、腾讯、蚂蚁三家,最后都差不多拿到了offer,后面也没啥好面的厂了,想着把面试经验写出来吧,也算是做了一点小小的贡献吧。另外我这里为大家准备了一线大厂面试资料和我原创的超硬核PDF技术文档,以及我为大家精心准备的多套大厂面试题(不断更新中),有需要的朋友可扫码下方我的VX:rxh8515 即可免费发送给您!希望大家都能找到心仪的工作!原创 2020-12-22 22:18:58 · 640 阅读 · 7 评论 -
朋友仅凭一己之力,砍下阿里和腾讯的offer,在这分享一下他上岸成功的面经希望帮助到大家!
前言这个秋招并不顺利,一开始的时候简历海投大多数都被拒绝了,后来自己找在腾讯上班的朋友帮忙改了一下简历,果然不一样了大多都能拿到面试机会,当然拿到后也没有那么顺利,面了差不多有十几家公司的样子,大大小小的都有,其中有阿里,百度,字节这样的一线互联网公司,还有很多独角兽公司和外部公司这样的我就不列出来了,最后我这边拿到offer在手里的其实就没几家了,这边只有阿里和腾讯给了电子offer那些小公司就不算在内了,不过能这样已经是超出我的预料了,下面我把自己的经验都写在下面,希望我的这一波经验能帮助到大家!原创 2020-12-21 16:07:30 · 385 阅读 · 12 评论 -
二本渣渣的疯狂逆袭之路,奋战3月有余,3面蚂蚁金服终已征服面试官斩下我的offer!
二本渣渣的疯狂逆袭之路,奋战3月有余,3面蚂蚁金服终已征服面试官斩下我的offer!一面:30分钟自我介绍 手写冒泡排序 介绍Java线程池 线程池的流程 为什么要用线程池 有哪些常用的线程池,各自的应用场景是什么样的 频繁创建销毁线程会消耗哪些资源 线程同步的方式 synchronized锁升级过程 MySQL的隔离级别 不同隔离级别各自会出现什么问题 间隙锁原理 读的时候可以加锁吗 elasticsearch原理(倒排索引) 如果同一个单词在多个文本中出现,该怎么选择原创 2020-12-08 21:32:08 · 376 阅读 · 15 评论