Mybatis # 与 $ 符号区别

一、区别
1.不同点: 以#{}方式传入参数,预编译时,它会将sql中的#{}替换为?,然后编译sql时,会把值两端加上 双引号。有效防止sql注入,保证数据安全。

sql注入:通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。

      以${}方式传入参数时,字符串替换,不会把值两端加上 双引号。
2.相同点: 拼接sql语句
二、使用
1.${}获取DAO参数数据时,参数必须使用 @param注解 进行修饰或者使用 下标 或者 参数#{param}形式
2.#{}获取DAO参数数据时,假如 参数个数一个及以上可有选择的使用@param

以下:
Mybatis架构原理与六大核心

posted @   手可敲星辰脚驾七彩云  阅读(94)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示