后端岗位面试题更新 2026-08-05

MyBatis的#{}和${}有什么区别?哪个是预编译且能防止SQL注入的安全写法?

腾讯云智研发后端开发互联网/IT安全意识技术原理MyBatisSQL

考察说明

考察MyBatis参数占位符的底层机制与SQL注入防护意识

回答思路

  1. 说明#{}是预编译占位符,安全;${}是字符串拼接
  2. 解释#{}会生成PreparedStatement参数,${}直接替换
  3. 补充应用场景与风险控制
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。