#会先将sql预编译,然后底层使用PreparedStatement的set方法进行参数设置。
$将传入的数据直接将参数拼接在sql中。
因此,#与$相比,#很大程度的防止sql注入。例如:
select * from user where id = #{id} 最终sql: select * from user where id = ? select * from user where id = ${id} 最终sql: select * from user where id = 1
版权归属:
Gxbalun
许可协议:
本文使用《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》协议授权
评论区