mapper
- mybatis
- jpa
- jdbc template
- hibernate
#{} 获取参数时, 支持索引获取, param 1 , 获取指定位置参数, 并且使用SQL ? 占位符;
${} 获取参数时, 字符串拼接不使用 ? , 默认找 ${ 内容} 的get/set 方法, 如果是一个数字 那么就是一个数字;
- .mybatis之分页插件的使用 https://www.jianshu.com/p/c70722f55d74
最好是能用#{}则用它,因为它可以防止sql注入,且是预编译的,在需要原样输出时才使用${},如,
select *
from ${tableName} order by ${id}
-- 这里需要传入表名和按照哪个列进行排序 ,加入传入table1、id 则语句为:
select * from table1 order by id
-- 如果是使用#{} 则变成了
select * from 'table1' order by 'id'
--- 这样就不对了。