面灵AI

科大讯飞Java开发面经

轮次
一面、二面
时间
2026-09
来源
牛客网

《面试题目》

  1. 为什么使用 JWT 后还要做 Redis 白名单?
  2. Spring Data JPA 如何实现一对一和多对多映射?
  3. 用户在多个窗口或平台登录时,其中一个登出如何同步退出?
  4. 支付的完整交易链路如何设计?
  5. 幂等性如何实现?
  6. 库存扣减如何实现?
  7. 什么是 MVCC?
  8. MySQL 事务如何保证一致性?
  9. Spring Boot 是如何启动的?
  10. Spring Boot 事务注解如何实现?什么时候会失效?
  11. OSS 上传的图片如何限制为不可公开访问?
  12. Redis 如何实现分布式锁?
  13. Agent 的多种引擎如何创建和使用?
  14. RAG 知识库如何实现?
  15. 记忆系统如何处理过长上下文?
  16. Skill 如何在对话中使用?
  17. 什么是 DeepResearch?
  18. 工具注册如何实现?
  19. 为什么不直接使用现有 Agent 框架?
  20. 文献查阅工具使用了哪些 API?
  21. 如果同时有后端、全栈和 Agent 开发岗位,会选择哪个?

《参考解析》

JWT 负责无状态身份传递,Redis 白名单可实现主动注销、设备踢下线和风险控制。支付链路需覆盖下单、预扣、支付渠道、异步通知、验签、幂等更新和对账;库存扣减应使用原子条件更新或预扣加补偿,防止超卖。

JPA 通过实体关系和中间表表达映射;Spring Boot 启动会创建环境、应用上下文并执行自动配置。事务依赖代理,自调用、异常类型不匹配或方法不可代理都会导致注解失效。对象存储应使用私有桶和短时签名 URL。

RAG 一般包含文档切分、向量化、召回、重排和带引用生成;记忆系统应区分短期上下文与长期摘要。Agent 工具必须声明参数 schema、权限和幂等策略,模型只能提出动作,执行仍需服务端校验。是否自研框架应以可观测的扩展性、维护成本和现有能力差距为依据。