练习时长 1 年 2 个月的 Java 菜鸡练习生最近面经,期望25K

news2024/11/26 13:43:47

面经哥只做互联网社招面试经历分享,关注我,每日推送精选面经,面试前,先找面经哥


自我介绍:本人是练习时长 1 年 2 个月的 Java 后端菜鸡练习生。下面是我最近面试的面经:

百度 一面 约1h时间:2024-02-26 岗位:Java 开发

流程:一面挂评价:体验好,面试官会引导,每个问题能给我解决方案,最后建议比较用心中肯

1、GAP 时间解释

2、项目的抽奖序列都在一个池子中么?奖品一直被一个用户抽怎么办,存在bug?怎么优化?(1.增加奖品步长 2.多个奖品池)redis分布式锁应用层如何使用?如何加锁解锁,设置过期时间了么?

3、JDK11特性?(不要给自己挖坑)

4、Redis 如何使用 Zset 设计延迟队列?

4、SpringBoot 项目启动参数?

5、了解哪些垃圾收集器?线上频繁 FullGC 原因和解决方案?

6、为什么项目用 restTempate 和 openFeign?为什么不统一?openFegin 底层原理?

7、Java 代码中如何映射域名和 ip?多种方式实现?

8、sql:两张表 sql 求并集交集差集

9、算法:手写单例模式

10、反问面评:基础较差,项目太简单

11、追问:不了解启动参数->基础差;项目应该深挖不同模块的关系,如何解耦,体现项目的复杂度-> 项目简单


阿里 一面 约 45 min时间:2024-02-22 

岗位:Java 开发流程,未知评价‍

1、项目相关

2、MQ:不同 mq 区别?mq的路由方式?mq 如何保证消息可靠性?消息消费失败如何处理(重试机制+拒绝策略+消息失败表+企微告警)

3、MySQL:主键与唯一索引区别?

4、操作系统:线程和进程的区别?

5、JVM:Java 运行时内存区域,哪些是线程私有,哪些是线程共有

6、算法:三角形最小路径和(lc120);

7、反问面评,面试轮次和结果反馈:还可以,最多四轮,3天内


美团(火车票)一面 约55min时间:2024-02-21 岗位:Java 开发

流程:一面挂评价:基础面,都回答出来了,总结是项目简单

1、项目相关

2、算法:判断字符串是否能够由重复子串构成,求最小子串(lc459

3、MySQL:索引有哪些?B+树?索引失效?慢 sql 分析?主从原理

4、多线程:线程池执行流程?

5、JVM:JVM 组成?线上 OOM 如何解决?实际开发中是否调优?

6、反问面评:基础还可以,项目太简单


哈啰 一面 约1h时间:2024-02-02 岗位:Java 高级开发

流程:一面挂评价:中规中矩

1、项目相关,哪些有挑战性的,举例说明?

2、抽奖奖品 priceIndex 为什么用 redis 自增 id?

3、项目上下游是如何流通的,数据流如何运转?

4、场景:项目中抽奖动作是否写死?如果做成活的(前三天的业务动作与后四天的业务动作不同),有什么处理方式呢?

5、数据落库(mysql)的同时向 es 插入,为什么还需要定时任务全量刷新库内数据至es?

6、Java 线程有几种状态?

7、了解过哪些锁呢?

8、CAS 原理和问题?

9、voliate 能保证原子性么?为什么?

10、ThreadLocal 作用和坑?

11、线程池的核心参数?执行流程?如何选择线程池的核心参数?

12、你提到了 IO 密集型和 CPU 密集型,设置不是绝对的,如何通过其它方式选择线程池的参数?(回答 Spring Boot Actuator)

13、Java 原生的线程池有哪些?

14、Java 线程池相关 API 有哪些?

15、如何进行多线程数据同步?(回答 wait-notify,join,countdownLatch,Future,CompletableFuture )

16、mysql 索引失效场景?

17、mysql 底层数据结构?

18、mysql 主键索引和非主键索引的区别?

19、mysql 建立联合索引,非叶子节点存储什么数据?

20、redis 如何部署?

21、redis 使用场景有哪些?

22、redis 分布式锁的原理?你设计一个分布式锁需要注意哪些问题?23、spring 启动流程

24、spring 循环依赖?如何解决循环依赖?

25、了解过哪些设计模式?

26、静态代理和动态代理的区别?

27、平时如何学习的?

28、反问:面试结果反馈时间和面试流程


美团(小象超市) 一面 约1h时间:2024-02-01‍

岗位:Java 中级开发

流程:一面挂评价:不想说啥了,我是真 TM 菜

1、项目相关

2、如何设计一个有界阻塞队列?有界队列 size 满了,put 元素会发生什么?

3、多线程算法:打印abc(不限制顺序),最后输出“我们打印完了”

4、Java8 流式算法:Java8 实现将同学列表 List 转 key 为 name,value 为 age HashMap

5、sql:如何统计平均执行速度,输出 IP和avgSpeed 执行表task_execute(task code、lP、create time)报告表 task_report (task_code、speed、create time)

6、Linux 如何打印进程号?

7、Linux 如何搜寻错误日志?

8、你们项目如何查询日志?

9、如何查看 sql 索引是否失效?

10、索引什么不要对大字段建立?

11、int(1)能否存放127?

12、varchar(20)能否存放字符长度30或50的字符?会出现什么问题

13、jvm 线上调优过没?


易点天下 一面 约25min时间:2024-01-24 岗位:Java 开发

流程:一面挂评价:体验差

1、如何设计有界队列?

2、Java 中为什么引用泛型?

3、Java 中为什么引用多线程?

4、SpringBoot/SpringCloud 原理?

5、MySQL 如何设计一个 server?

6、项目相关?

汇丰银行 一面 56min时间:2024-01-23,17时,岗位:se(software engineer)

流程:一面挂,面完不到一小时感谢信(联系内推人答复 offer 已发)

评价:聊的挺好的,给的理由是英语不行,面试过程中特意问面试官 se 岗的英文要求,答复只需看懂文档和回复邮件,有点无语

1、离职原因,是否定居,未来发展计划等?

2、开发流程,编写代码所在比重,如何与产品测试对齐等?

3、HashMap 底层实现?HashMap 如何获取元素?(重写hashcode equals方法)

4、concurrentHashMap 如何加锁保证线程安全?

5、synchronized 和 reentrantlock 的区别?

6、mirror gc 与 full gc 区别?(讲解的分代收集算法)

7、内存溢出与内存泄漏区别?

8、什么情况会导致OOM?

9、一道sql,一张表存放四个班级的所有学生成绩,如何取出最高三人成绩?如何按照班级,取出每班最高三人成绩?

10、英文自我介绍,两个英文问题


shein 一面 47min时间:2024-01-22,14时,岗位:Java 高级/资深工程师

流程:一面挂评价:面试官人不错,会引导我回答一些问题,确实由于个人能力有限,知识点串联较差,掌握不扎实,最后面评面试官给了中肯的评价,确实需要加强

1、离职原因,是否定居,未来发展计划等?

1、项目相关

2、mq 如何保证可靠性?(消费者应答机制,手动,自动,无应答)

3、redis 分布式锁的原理?(过期时间,看门狗机制,锁自旋,lua脚本)

4、如何统计接口执行时间?(代码侵入,AOP,网关,skywalking)

5、redis 缓存使用,坑有哪些?(双写一致性,缓存击穿,缓存穿透,缓存雪崩,高可用集群的角度)

6、线程池如何设置参数(解释核心参数,IO密集型,CPU密集型,阻塞队列的选取,设置大小)

7、多线程同步执行数据?还有什么其它方法吗?(countDownLatch)8、Future 作用?

9、线程池的监控?

10、索引的数据结构,底层如何实现的?

11、索引的种类有哪些?

12、索引创建的原则?

13、索引什么场景失效?

14、分页查询如何利用 limit 做的?

15、SpringBoot 的 Starter?

16、Spring 事务的注解?

17、Spring 事务失效场景?不加 public 为何事务失效?(aop)

18、mapper 文件如何加载到容器中?

19、mapper 文件与接口方法如何映射?

20、mapper 中是否可以进行方法重载?

21、sql注入,如何解决?

22、G1 垃圾收集器原理?


92c1723592b1892607cf8dad0a7e2a35.jpeg


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1835120.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MJ绘画设计基础——如何玩转midjourney?

抽卡的时候经常有一个问题,就是整张图都还不错,但是某些地方有些小问题,比如说手很奇怪,比如下面这个图,哪都挺好看,就是左手有点问题。 这时候就可以局部重绘来拯救一下 第一次生成的图 点击图片下方的V…

黄仁勋加州理工毕业典礼演讲:人工智能是我们这个时代最重要的技术

英伟达公司首席执行官黄仁勋周五(6月14日)在加州理工学院(Caltech)毕业典礼上发表演讲,鼓励毕业生在逆境中努力,不断寻求新的机遇。 黄说,加州理工学院因其毕业生受人尊敬而闻名,如…

5G+北斗高精度定位终端技术,赋能千行百业应用

5G北斗高精度定位终端技术的融合,正以前所未有的精准度和实时性,为千行百业带来革命性的变革。从智慧城市的精细化管理,到智能交通的实时调度,再到精准农业的播种与收割,这一技术正不断拓宽其应用领域,为各…

驰为电脑软件卸载指南:轻松解决软件占用问题

驰为电脑作为一款性能出色的设备,用户在使用过程中难免会安装各种软件以满足不同的需求。然而,随着时间的推移,一些软件可能变得不再需要,或者我们可能需要更新到新版本。这时,如何有效地卸载不再使用的软件&#xff0…

【启明智显产品分享】Model4 工业级HMI芯片详解(三):高安全、防抄板

Model4 工业级HMI芯片详解系列专题(三)【高安全、防抄板】 随着物联网和智能设备的快速发展,设备安全认证的需求日益迫切。硬件安全认证和保护在确保设备和身份安全中发挥着不可替代的作用,需要与软件安全相结合,共同构…

【1】、var、let、const 三者的区别

主要围绕一下五个方面 变量提升暂时性死区块级作用域重复声明修改声明的变量 1、变量的提升 【var】可以在声明前使用,即输出为undefined 【let】和【const】未声明不可使用,否则会报错 2、暂时性死区定义:在代码块内,如果引用…

java之mybatis笔记

1 项目创建 1.1 maven设置 1.2 创建项目文件 1.3 配置MyBatis的相关依赖 1.4 配置 MyBatis 创建一个 mybatis-config.xml 配置文件&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org…

翻转数位00

题目链接 翻转数位 题目描述 注意点 可以将一个数位从0变为1找出能够获得的最长的一串1的长度&#xff08;必须是连续的&#xff09; 解答思路 参照题解使用动态规划解决本题&#xff0c;对于任意一个位置i&#xff0c;dp[i][0]表示到达且包含第i位不翻转0最长1的长度&…

Vue3 状态管理 - Pinia,超详细讲解!

前言&#xff1a; 哈喽&#xff0c;大家好&#xff0c;我是前端菜鸟的自我修养&#xff01;今天给大家分享【Vue3 状态管理 - Pinia】&#xff0c;超详细讲解&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;原创不易&#xff0c;如果能帮助到带大…

AxProtector CTP荣膺2024年度德国创新奖,见证软件安全领域新突破

AxProtector CTP通过将混淆技术直接集成到编译过程中&#xff0c;引入了一种突破性的软件安全保护方法&#xff0c;有效对抗逆向工程。适用于Windows、Linux和macOS&#xff0c;确保在各种操作系统上的广泛应用。结合了强大的知识产权保护和灵活的许可功能&#xff0c;包括模块…

鸿蒙HarmonyOS DevEco Studio 安装配置

一、安装后配置 文档&#xff1a;https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/software_install-0000001053582415-V2 Node.js版本要求为v14.19.1及以上&#xff0c;且低于v17.0.0&#xff1b;对应的npm版本要求为6.14.16及以上&#xff0c;可以选择本…

k8s学习--chart包开发(创建chart包)

文章目录 chart包应用环境一、安装helm客户端工具二、chart包目录结构三、创建不可配置的chart1.创建目录和chart.yaml2.创建deployment.yaml3.创建service.yaml4.使用chart安装应用5.查看和验证 四、创建可配置的Chart1.官方的预定义变量2.新增values.yaml文件3.配置deploy引用…

swagger手动添加cookies信息、浏览器中手动添加cookies信息

在实际项目使用中&#xff0c;我们可能需要把登录token放到cookies中&#xff0c;请求时从cookies中获取token值&#xff0c;以此校验用户登录信息&#xff0c;以下整理一下怎么在cookies中手动添加数据。 操作步骤如下&#xff1a; (1)&#xff1a;F12打开调试工具&#xff…

实验13 BGP路径选择

实验13 BGP路径选择 一、 原理描述二、 实验目的三、 实验内容四、 实验配置五、 实验步骤 一、 原理描述 与域内路由不同&#xff0c;域间路由更加注重策略&#xff0c;而不是技术。在域内进行选路&#xff0c;可以使用路由算法计算出到达目的子网的最短路径&#xff1b;而在…

【ajax基础01】ajax简介

一&#xff1a;ajax简介 1 什么是ajax AJAX&#xff08;Asynchronous JavaScript And XML &#xff09;是一种在 Web 应用中通过异步发送 HTTP 请求向服务器获取内容&#xff0c;并使用这些新内容更新页面中相关的部分&#xff0c;而无需重新加载整个页面的 Web 开发技术。这可…

FuTalk设计周刊-Vol.035

&#x1f525;AI漫谈 热点捕手 1、Google 史上最强大模型 Gemini&#xff0c;真的全面「碾压」GPT-4 吗&#xff1f; 谷歌的类 ChatGPT 应用 Bard 已经升级到了 Gemini Pro 版本&#xff0c;实现了更为高级的推理、规划、理解等能力&#xff0c;同时继续保持免费。谷歌预计在…

Mongodb介绍及window环境安装

本文主要内容为nosql数据库-MongoDB介绍及window环境安装。 目录 什么是MongoDB&#xff1f; 主要特点 MongoDB 与Mysql对应 安装MongoDB 下载MongoDB 自定义安装 创建目录 配置环境变量 配置MongoDB服务 服务改为手动 启动与关闭 安装MongoDB Shell 下载安装包 …

蓝卓创始人褚健:工厂操作系统+APP,加速工业数字化转型

如何让众多的中小企业通过低成本的方式实现收益&#xff0c;享受到工业互联网、数字化转型带来的效益&#xff0c;是解决中小企业数字化转型难的核心问题。 中小企业规模庞大&#xff0c;数字化转型压力巨大 褚健表示&#xff0c;中国拥有最庞大的工业企业集群&#xff0c;全国…

UltraEdit电脑版下载_UltraEdit文本编辑器中文版下载_UltraEdit 2024最新版软件安装包下载附加详细安装步骤

UltraEdit中文版是一款功能强大的文本编辑器&#xff0c;几乎可以满足你所有的工作需求。使用UltraEdit文本编辑器可以操作更多记事本所不能处理的工作。如&#xff1a;基本的编辑文本、十六进制、ASCLL码、语法加亮、代码折叠、代码单词拼写检查等、C 及 VB 指令突显等,附有 H…

EdgeOne 边缘函数—如何动态改写 M3U8 媒体文件

目前&#xff0c;各大主流厂商都推出了自己的边缘 Serverless 服务&#xff0c;如 CloudFlare Workers、 Vercel EdgeRuntime 等&#xff1b;腾讯云 EdgeOne 边缘函数提供了部署在边缘节点的 Serverless 代码执行环境&#xff0c;只需编写业务函数代码并设置触发规则&#xff0…