欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Mybatis中#和$的区别

程序员文章站 2022-07-14 11:11:21
...

以两条SQL语句进行说明:

SELECT * FROM tab WHERE col=#{col};
SELECT * FROM tab WHERE col=${col};

#{}在预处理时,会把参数部分用一个占位符?代替,变成如下的 sql 语句:

SELECT * FROM tab WHERE col=?;

而${}在预处理时,会把参数直接拼在SQL语句里:

SELECT * FROM tab WHERE col='abc';

使用时,推荐使用#{},因为${}会有SQL注入的危险。