mybatis#{}与${}的区别
1、#相当于对数据 加上 单引号,$相当于直接显示数据
2、一般能用#的就别用$,首先这是为了性能考虑的,相同的预编译 sql 可以重复利用。使用#也可以有效防止SQL注入。
3、#{ } 被解析为一个参数占位符 ? ,${ } 仅仅为一个纯碎的 string 替换,在动态 SQL 解析阶段将会进行变量替换。
4、表名作为变量时,必须使用 ${ },使用#{} sql 占位符替换字符串时会带上单引号 '',这会导致 sql 语法错误
5、${}基本类型只能是${value}
分享几篇写个比较好的:
https://www.cnblogs.com/sibuhuigai/p/10646427.html
https://blog.csdn.net/u013552450/article/details/72528498/
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步