一天流程面完京东后端

部门:京东物流
技术与数据智能部
4.1更新已发offer

流程:
投递约面3.28
一面上午九点二十
二面上午十点
hr面下午三点

流程快的难以置信,面试时间大约10-20分钟,只聊了实习经历没有单独的八股,面试官很好,约的9:20然后他9:15就提前来了,看到来的更早还说迟到了,二面的领导也很和蔼,反问具体业务也特别详细的介绍。

由于确实没有面到什么八股,就把之前准备京东整理的一些面经发一下吧

1、增大堆内存命令,增大栈内存命令
堆内存
- -Xms:用于设置 JVM 堆内存的初始大小。
- -Xmx:用于设置 JVM 堆内存的最大大小。
栈内存
- 可使用 -Xss 参数来调整栈内存大小。

2、MyBatis $与#的区别有哪些
#:它是预编译的占位符。MyBatis 在处理# 占位符时,会把 SQL 语句和参数分开处理。先将 SQL 语句中的 # 占位符替换为 ?,接着使用 PreparedStatement 来执行 SQL 语句,把参数值作为 PreparedStatement 的参数传入。这样可以有效防止 SQL 注入攻击。
$是直接替换占位符。MyBatis 会直接把 $ 占位符替换为实际的参数值,而不进行预编译。这意味着参数值会原样插入到 SQL 语句中。

3、使用$如何防止sql注入
- 在将参数传递给 MyBatis 之前,要对参数进行严格的过滤和验证,确保参数值符合预期。例如,若参数是表名或列名,可预先定义一个合法的名称列表,只有在列表中的名称才允许使用。
- 借助正则表达式来验证参数值,保证其只包含合法的字符。比如,对于表名和列名,通常只允许包含字母、数字和下划线。
- 可以自定义 MyBatis 拦截器,在拦截器中对使用 $ 的 SQL 语句进行额外的检查和处理。

4、MyBatis如何设置超时时间
- 可以在 MyBatis 的全局配置文件(通常是 mybatis-config.xml)里设置超时时间,此设置会对所有的 SQL 语句生效。
- 也能在 Mapper XML 文件里针对具体的 SQL 语句设置超时时间,这种设置方式会覆盖全局配置中的超时时间。

5、MyBatis如何实现分页效果
- 手动在 SQL 语句中添加分页逻辑,不同数据库的分页语法有所不同。例如,MySQL 使用 LIMIT 关键字
- 使用第三方分页插件,如 PageHelper,它会自动拦截 SQL 语句并添加分页逻辑。

6、PageHelper插件原理,哪个包提供的
1. 拦截器注册:PageHelper 借助实现 MyBatis 的 Interceptor 接口,创建一个拦截器类。在配置 MyBatis 时,会把这个拦截器注册到 MyBatis 的拦截器链中。当执行 SQL 查询时,MyBatis 会按照拦截器链的顺序依次调用各个拦截器。
2. 分页参数设置:PageHelper.startPage(pageNum, pageSize) 方法来设置分页参数,这些参数会保存在threadlocal中
3. sql拦截和修改:拦截 Executor 的 query 方法。在拦截器的 intercept 方法中,会从 ThreadLocal 里获取之前设置的分页参数。对原先的sql添加limit等参数
4. 执行sql命令
5. 清除threadlocal

7、深分页怎么优化?
数据库层面
- 覆盖索引,查询所需要的字段都包含在索引中,数据库可以直接从索引中获取数据,而无需回表查询
- 嵌套查询,先去查主键id,然后select *
- 如果是递增的,可以记录之前的id,然后条件里面添加where id > **
业务层面
- 缓存层处理
- 前端分页限制

8、雪花算法有什么问题?
时间回拨:服务器的时间出现回拨,即时间被调整到过去的某个时刻,就可能导致生成的 ID 出现重复
解决方案:
- 如果时间差的不多的话,暂停ID的生成,然后等待时间恢复
- 主机号那个地方,选出3位,当回退的时候序号+1

9、C10k 问题是什么,C10M呢
C10k 问题是指服务器如何支持 10k(10,000)个并发连接的问题
C10M 则是指服务器如何实现处理 10M(10,000,000)个并发连接的问题

10、什么是同步和异步io,什么是阻塞和非阻塞io
同步IO:程序发起一个 I/O 操作后,程序需要等待 I/O 操作完成后才能继续执行后续代码
异步IO:程序发起一个 I/O 操作后,不必等待 I/O 操作完成,可以继续执行后续代码,后续用回调函数、信号等方式通知程序
阻塞IO:程序发起一个 I/O 操作后,如果 I/O 设备没有准备好数据,程序会被挂起,处于等待状态,直到 I/O 设备准备好数据并完成数据传输,程序才会继续执行。
非阻塞IO:程序发起一个 I/O 操作后,如果 I/O 设备没有准备好数据,程序不会被挂起,而是会立即返回一个错误信息,程序可以继续执行其他任务,通过轮询的方式来检查IO是否准备好数据。

11、对AOP的理解
面向切面编程,它是一种编程范式
是对面向对象编程的补充
核心概念涉及:
切面:和业务逻辑没关,但是被多个模块调用的一些逻辑,比如日志信息、事务管理
连接点:程序运行可以插入切面的点,比如是方法调用、返回、抛出异常的关键点
通知:就是切面在连接点要干的事情。有前置通知、后置通知、环绕通知等
实现方式主要静态代理和动态代理,静态代理就是在编译那一步去做的,对java代码进行修改,动态代理通过代理类把对应逻辑织入到目标链路中。主要有jdk代理和cglib代理两种。

12、如果甲方很强势,给你一个需求,但是这个需求确实不能按期完成,你会怎么做?

13、在实习的过程中是否有很难对接的情况,这种情况是怎么处理的呢

#牛客创作赏金赛##京东##京东求职进展汇总##牛客AI配图神器#
全部评论
佬,请问是什么bg?二面要写代码吗?
1 回复 分享
发布于 04-02 16:46 辽宁
tql了字节
1 回复 分享
发布于 03-28 23:40 北京
接好运
点赞 回复 分享
发布于 07-23 19:50 辽宁
佬,这个部门每轮面试几个面试官啊
点赞 回复 分享
发布于 06-21 13:44 江苏
接好运
点赞 回复 分享
发布于 04-24 18:10 北京
佬是实习还是春招
点赞 回复 分享
发布于 03-31 22:43 广东
请问楼主接了offer了吗打算去吗
点赞 回复 分享
发布于 03-31 19:55 辽宁
接好运
点赞 回复 分享
发布于 03-31 12:01 北京

相关推荐

头像
08-27 22:07
已编辑
武汉大学 Java
二面,无法深入某个点,被频繁打断,压力面或是面试官看不上楼主,谁知道呢1. 做一个简短的自我介绍(头一次听到这个要求,高速神言.jpg)2. 自我经历盘点(面试官更在乎使用人数、qps等指标,这个楼主哪会啊)3. 想来京东吗,大厂之间优先怎么选择(想啊,怎么不想,楼主肯定优先选择jd啊。楼主想做东哥兄弟,想为东哥的外卖事业添砖加瓦,顺便盛赞开在光谷的京东mall)4. 职业规划与base地(比待遇越比心胸越窄,讲奉献越讲境界越高)5. 缓存穿透、雪崩原理以及避免6. redis常见数据结构(不会,跳过)7. 你到底想搞中间件开发还是应用开发(想搞应用开发,具体用法楼主确实说不到点上嘛,给面试官讲原理又不乐意听)8. 数据库为什么禁用JOIN操作(水平拓展),为什么禁用SELECT *(后续加字段不影响老代码)9. 数据库优化手段(建索引,查慢sql,看执行计划)10. 浏览器输入一条url的过程11. http与https的区别12. get与post的区别13. 除200、404、500还有什么状态码14. http 1\2\3区别(楼主正欲抖擞精神,说个10+min,然后接着被快速打断)15. 消息队列的使用场景(削峰填谷、解耦、异步)16. 10层楼电梯、5000人上下班高峰期如何安排电梯规则(带伙回忆一下医院和超高层的电梯怎么调度的)17. 发红包的逻辑(空间换时间、或者设计算法确保第一个人和最后一个人抢到钱的期望是一致的)18. 最近一次对父母的感恩(这个真的感恩)19. 反问:部门规模:生服几百号人,面试官自己手下100+人,活水比较容易,业务结构与公司架构比较多变,反正现在是这样。面试流程:后续会有线下hr当面跟你沟通(楼主瞪大眼睛,面试官说jd各地都有人,应该找个武汉的还是不难的)酣畅淋漓的八股问答,10+问题实际只花了20min不到,因为根本就不让楼主延伸。楼主是深入几个点串联起来的知识体系,这些纯表面八股楼主反而容易记岔或者干脆就不知道,面试官频繁打断楼主想深入说下去的行为,也许是压力面,也许是不认可楼主的知识体系,anyway,八股都知道没什么用,为啥不来听听楼主从另一个角度讲述的八股呢?过了就万事大吉,挂了就找中间件部门捞楼主。—————————————————————实在没什么好说的,后面打算把二面直接放进来。1. 自我介绍2. 开源项目盘点3. DDD架构思想探讨(问到楼主公司业务分了几层楼主就说不上来了,不过应该无伤大雅罢)4. mysql跟pg的区别(用法上不知道,但楼主举了几个底层机制实现的区别)5. 雪花算法与自增ID的区别(这里其实楼主不太清楚怎么答,毕竟自增ID是完完全全的mysql机制,并非所有数据库都支持,而雪花算法则能让任何分布式系统都用上,并不具备可比性,不过楼主顺便也提到了以前mongodb时代声明uuid优于自增ID是因为安全性这类成年老八股)6. 你真想搞业务吗(是的,真想搞业务)7. 反问:部门:零售-生服-外卖作息:每周两天发布日,起码11点走,平时早十晚九(补药让楼主吐槽)虽然作息很难评,想着要不还是挂了楼主吧,但这个一面确实楼主想挂的巧妙又不脏面评实在是太难了,只能说但凡有选择楼主都不会来这里的,这也太吓人了。
查看25道真题和解析
点赞 评论 收藏
分享
评论
17
147
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务