• #{}是预编译处理,${}是字符串替换。
  • Mybatis 在处理#{}时,会将 sql 中的#{}替换为?号,调用PreparedStatement 的 set 方法来赋值;
  • c、Mybatis 在处理 $ {} 时,就是把${}替换成变量的值。
  • 使用#{}可以有效的防止 SQL 注入,提高系统安全性。

更多推荐

mybatis面试题:#{}和${}的区别是什么