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个原因
  • 法国签证或居留证丢失了怎么办
  • 黄韭盆景怎么种植?
  • 热门搜索
    生活中的小窍门手抄报 以孝为主题的手抄报 春节见闻手抄报 轻声慢步手抄报内容 道路交通安全手抄报 关于感恩节的手抄报 积极向上的手抄报 有关于感恩的手抄报 小学生食品安全手抄报 夏洛的网手抄报