发布网友 发布时间:2022-04-27 04:20
共1个回答
热心网友 时间:2022-04-08 09:24
浅谈mybatis中的#和$的区别 以及防止sql注入的方法
#{ } 解析为一个 JDBC 预编译语句(prepared statement)的参数标记符。
例如,sqlMap 中如下的 sql 语句
select * from user where name = #{name};
解析为:
select * from user where name = ?;
一个 #{ } 被解析为一个参数占位符 ? 。
${ } 仅仅为一个纯碎的 string 替换,在动态 SQL 解析阶段将会进行变量替换