
mybatis #{}和${}区别
发布日期:2021-05-09 01:21:51
浏览次数:11
分类:博客文章
本文共 437 字,大约阅读时间需要 1 分钟。
区别1
- #{}:相当于JDBC Sql语句中的占位符?(PreparedStatement),可以防止Sql注入
- ${}:相当于JDBC Sql语句中的连接符号+(Statement),不能防止Sql注入
区别2
- #{}:进行输入映射的时候,会对参数进行类型解析(如果是String类型,那么Sql语句会自动加上' ')
- ${}:进行输入映射的时候,将参数原样输出到SQL语句中 -->相当于replace替换相应位置的值
注:模糊搜索时,注意使用的是${},如果使用的是#{},会在两头加上'',此时sql语句变成:select * from user where username like '%'张三'%';这样不就报错了嘛
区别3
- #{}:如果进行简单类型(String、Date、8种基本类型的包装类)的输入映射时,#{}中参数名称可以任意
- ${}:如果进行简单类型(String、Date、8种基本类型的包装类)的输入映射时,#{}中参数名称必须是value
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2025年04月06日 15时48分34秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
程序员应该知道的97件事
2021-05-08
create-react-app路由的实现原理
2021-05-08
openstack安装(九)网络服务的安装--控制节点
2021-05-08
shell编程(六)语言编码规范之(变量)
2021-05-08
vimscript学习笔记(二)预备知识
2021-05-08
Android数据库
2021-05-08
HTML基础,块级元素/行内元素/行内块元素辨析【2分钟掌握】
2021-05-08
STM8 GPIO模式
2021-05-08
23种设计模式一:单例模式
2021-05-08
Qt中的析构函数
2021-05-08
三层框架+sql server数据库 实战教学-徐新帅-专题视频课程
2021-05-08
【单片机开发】智能小车工程(经验总结)
2021-05-08
【单片机开发】基于stm32的掌上游戏机设计 (项目规划)
2021-05-08
C++&&STL
2021-05-08
微信js-sdk使用简述(分享,扫码功能等)
2021-05-08
c++中ifstream及ofstream超详细说明
2021-05-08
web项目配置
2021-05-08
基于单片机简易信号误差分析设计-全套资料
2021-05-08
基于单片机简易脉搏测量仪系统设计-毕设课设资料
2021-05-08