Mybatis中的#{}和${}的区别

#{}和${}他们两都是替换参数的作用,但也还是有很大区别的。

目录

[一、{}](#一、{})

二、#{}

三、注意点


一、${}

它是直接替换过来,不添加其它的什么。

比如下面的sql语句

select *from user where id=${id}

如果id=1,那么他替换过来就还是1,只是单纯的1

二、#{}

他替换过来之后,还会自动加上双引号 。

比如下面的sql语句

select *from user where id=#{id}

如果id=1,那么他替换过来就是"1",sql语句变成了: select *from user where id="1"

三、注意点

尽量使用#{},能用就用#{},因为他的安全性更好。特别注意order by排序用到的是${}

相关推荐
Hello.Reader22 分钟前
Flink SQL 的 JAR 语句ADD JAR / SHOW JARS / REMOVE JAR(SQL CLI 实战 + 避坑指南)
sql·flink·jar
韩立学长8 小时前
【开题答辩实录分享】以《自助游网站的设计与实现》为例进行选题答辩实录分享
java·mysql·spring
ss2738 小时前
线程池:任务队列、工作线程与生命周期管理
java·后端
不像程序员的程序媛8 小时前
Spring的cacheEvict
java·后端·spring
SAP小崔说事儿8 小时前
在数据库中将字符串拆分成表单(SQL和HANA版本)
java·数据库·sql·sap·hana·字符串拆分·无锡sap
凌云若寒8 小时前
半导体代加工企业标签模板痛点的全景式解决方案
java
shoubepatien9 小时前
JAVA -- 11
java·后端·intellij-idea
利剑 -~9 小时前
jdk源码解析
java·开发语言
Predestination王瀞潞9 小时前
JDK安装及环境变量配置
java·linux·开发语言
MatrixOrigin9 小时前
在数据库里玩“平行宇宙”:MatrixOne Data Branch 让数据也拥有Git 的分支/合并/对比/回滚(含跨集群同步)
git·sql·数据分析