京东 Java / 后端怎么准备

更新于 2026-09-02 · 面试易

京东后端面试常把正确性放到零售语境:库存、价格、仓配。大促是公开可讨论的压力场景,但不要编造内部峰值。

五题覆盖超卖、价格、拆单、售后状态和值班。用你做过的交易或仓储项目来答。

京东怎么面Java后端

面试阶段与知识点

第一批不把每个阶段拆成独立 URL,避免程序化重复页。阶段对应下面的题,练完再用模拟面试串起来。

值得开口练的题

每题给考察点、思路、结构化参考答案和追问。参考答案用来组织语言,面试时必须换成你自己的项目事实。

秒杀一件商品,库存扣减和下单哪个先做?

难度 困难 · 出现频率 高 · 系统设计

考察点

  • 超卖
  • 用户体验
  • 回补

回答思路

常见做法是预扣库存拿号再异步下单,但必须能幂等回补,入口还要限流防打穿。

结构化参考答案

  1. 入口层先做限流和风控,挡住远超真实库存的请求,避免无效流量打到数据库。
  2. 库存用条件扣减成功后才进入订单创建流程,扣减失败快速返回售罄。
  3. 下单失败必须触发回补,回补逻辑幂等,防止重复回补或漏回补造成库存漂移。
  4. 售罄后快速失败并更新前端状态,避免用户长时间等待却最终下单失败。

面试官可能追问

  • 缓存预减和 DB 谁是准绳?
  • 黄牛刷接口你怎么挡?
  • 回补延迟造成短暂超卖怎么收?

用这道题开始模拟面试

券、满减、会员价同时存在,价格计算顺序错了会怎样?

难度 中等 · 出现频率 高 · 编码与实现

考察点

  • 计算顺序
  • 舍入
  • 展示一致

回答思路

价格是交易契约,计算顺序必须版本化;前后端和售后都要引用同一套计价快照。

结构化参考答案

  1. 服务端是唯一计价器,前端只展示返回结果,禁止客户端自行重算促销组合价。
  2. 优惠叠加顺序写入定价版本号,下单时落库存价快照,售后按快照处理争议。
  3. 舍入规则明确到分并写进版本,避免多步折扣累积产生难以解释的误差。
  4. 对账任务定期抽检计价结果,发现漂移立刻停该促销并排查规则或实现 bug。

面试官可能追问

  • 改顺序是否允许已下单重算?
  • 套装和单品如何共用券?
  • 如何测试组合爆炸?

用这道题开始模拟面试

一个订单要拆成两个仓发货,用户看到什么状态?

难度 中等 · 出现频率 中 · 项目深挖

考察点

  • 父单子单
  • 部分发货
  • 客服

回答思路

拆单后用户仍觉得是一单,系统内部必须是多包裹模型,父单子单职责要清晰。

结构化参考答案

  1. 父单负责支付、发票和售后入口,子单负责各仓仓储物流状态和运单跟踪。
  2. 部分发货时展示每个包裹的独立进度,禁止只用一个模糊的「配送中」状态。
  3. 缺货子单允许补货或部分退款,不影响已发货子单的履约和用户收货体验。
  4. 客服和运营工具必须能按子单查询和操作,避免只能看父单无法处理局部问题。

面试官可能追问

  • 用户只要取消未发货那件怎么做?
  • 运费如何分摊?
  • 拆单失败回滚库存吗?

用这道题开始模拟面试

售后退款已经打出,仓库却说货没回来,你怎么设计状态?

难度 中等 · 出现频率 中 · 基础知识

考察点

  • 资金和货的分离
  • 冻结
  • 对账

回答思路

货和钱要解耦,用中间态管理;不要直接改已完成退款记录,追索和冻结要有流程。

结构化参考答案

  1. 退款状态和收货状态是两条状态机,用关联单号串联,避免混在一个字段里改。
  2. 未收货的退款可走风险策略:小额可先退,大额等入库确认后再完成最终退款。
  3. 货没回来进入追索流程,而不是回改用户已到账的退款记录掩盖账实不符。
  4. 对账任务列出钱货不一致清单同步仓储,推动实物追回而不是只在财务侧平账。

面试官可能追问

  • 先退后货被刷怎么办?
  • 物流丢件责任怎么定?
  • 如何避免客服手工改状态?

用这道题开始模拟面试

大促现场交易还在涨,履约已经积压,你保哪头?

难度 入门 · 出现频率 中 · 行为与协作

考察点

  • 用户承诺
  • 入口控制
  • 沟通

回答思路

零售和大促一样:接进来却送不出伤害更大;要看履约积压和用户承诺再决策。

结构化参考答案

  1. 先看履约积压深度、超时承诺和客服投诉,必要时关闭非核心入口或启用排队。
  2. 对已下单用户优先保履约和送达,对新进入流量降速或限流,避免继续堆积压。
  3. 同步产品和客服统一话术,暂停或下调投放,避免前端还在拉单后端已超负荷。
  4. 事后把限流阈值、触发条件和责任人写进大促预案,下次不用临时争论。

面试官可能追问

  • 谁有权关入口?
  • 如何衡量「积压」?
  • 你如何向业务解释少卖?

用这道题开始模拟面试

和岗位、模拟面试一起用

资料管理里保存目标岗位 JD,模拟面试会按简历出题。点题目下的按钮会把本题带进模拟开场,仍需先绑定简历与岗位。

用模拟面试练京东Java后端