news 2026/4/24 20:38:21

4.Mybatis中#{}和${}的区别是什么?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
4.Mybatis中#{}和${}的区别是什么?

Mybatis中#{}和${}的区别是什么?

#{}是预编译处理、是占位符, ${}是字符串替换、是拼接符
2Mybatis 在处理#{}时,会将 sql 中的#{}替换为?号,调⽤ PreparedStatement 来赋值
3Mybatis 在处理${}时, 就是把${}替换成变量的值,调⽤ Statement 来赋值
4使⽤#{}可以有效的防⽌SQL注⼊,提⾼系统安全性

-- 假设 name="zhangsan" password="1 or 1=1" select * from user where name = #{name} and password = #{password} 将转为 select * from user where name = 'zhouyu' and password = '1 or 1=1' select * from user where name = ${name} and password = ${password} 将转为 select * from user where name = zhouyu and password = 1 or 1=1
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 6:36:53

计算机Java毕设实战-基于springboot+vue的宠物医院管理系统的设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/23 6:36:57

java常用容器源码手撕实现

java常用容器源码手撕(持续更新) ArrayList: 动态数组,扩容,迭代器 package tech.insight;import java.util.Iterator; import java.util.NoSuchElementException; import java.util.Objects;/*** author gongxuanzhan…

作者头像 李华
网站建设 2026/4/23 8:02:02

Java毕设项目:基于springboot的学车驾校线上学习管理系统的设计与实现(源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/23 8:22:57

【课程设计/毕业设计】基于SpringBoot+Vue的社会博客系统基于springboot的博客系统【附源码、数据库、万字文档】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/23 8:19:53

物联网数据中台建设方法论与实践

好的,请看这篇文章。 标题选项 物联网数据中台的终极指南:从概念到落地实践解锁万物互联的宝藏:物联网数据中台建设方法论与实践详解告别数据孤岛:构建支撑海量IoT数据的智能中台从设备到洞察:手把手教你构建企业级物联…

作者头像 李华