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

${} 和 #{} 在 MyBatis 中的区别是什么?

东方财富后端开发金融风险判断技术原理MyBatis

考察说明

考察 MyBatis 参数处理方式及 SQL 注入风险意识

回答思路

  1. 说明 #{} 是预编译占位符,${} 是字符串拼接
  2. 指出 ${} 存在 SQL 注入风险,#{} 更安全
  3. 说明 ${} 常用于动态表名、列名等不可预编译场景
  4. 举例说明两者在参数传递中的不同结果
本题已收录答题指导

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

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