mybatis中占位符#{}和${}的区别

 时间:2024-11-01 03:14:18

1、首先我们在User.xml中写一个使用占位符#{}的配置:

mybatis中占位符#{}和${}的区别

2、然后在测试中执行这个sql:

mybatis中占位符#{}和${}的区别

3、通过日志可以看到sql:

mybatis中占位符#{}和${}的区别

4、所以可以看出#{}是一个占位符,输入的参数就会填入?中,而${value}是相当于字符串拼接:

mybatis中占位符#{}和${}的区别

5、不像#{}是用?来占位,而是锂淅铄旰直接拼接,所以这个可能会有sql注入问题,就比如,我们可以填入 参数 or 1=1,例如 password=111 or 1=1,这样无论填什么都会正确了。所以很危险。

mybatis中占位符#{}和${}的区别

6、以上就是关于mybatis中#{}和${}的区别了。如果文章对您有帮助的话,请为我的文章点赞投票,文章都是我平时做项目中遇到问题的积累和总结,谢谢了。

  • 避孕药可以治疗子宫息肉吗?
  • 三元桥地铁线怎么去
  • 引起肩部僵硬,疼痛和麻木的6个原因
  • 法国签证或居留证丢失了怎么办
  • 黄韭盆景怎么种植?
  • 热门搜索
    玉溪烟怎么辨别真假 脸肿了怎么消肿 政治表现怎么写 长安欧尚怎么样 低烧是怎么回事 体质差怎么调理 举报信怎么写 婴儿吐奶严重怎么办 卫生间漏水怎么补救 煤气表怎么看