#{key}和${key} 取值的区别
mybatis中 #{key}和${key} 取值的区别
mapper映射文件
<select id="selectUser" resultType="com.rpf.domain.User" >select * from user where id=${id} and name=#{name}
</select>
调用语句
List<User> users = userDao.selectUser( 1,"Jone");
生成的查询语句
select * from user where id=1 and name=?
用$取的值会直接拼接到sql 而#是一个占位符 然后再拼接
区别:
#{}以预编译的形式 将参数设置到sql语句中 相当于JDBC的PreparedStatement; 可以防止sql注入
${}取出的值直接是拼装在SQL语句中,无法防止sql注入 ,会有安全问题。
使用场景
大多数情况下 我们取参数的值应该使用#{};
某些情况下 原生jdbc不支持占位符的情况 我们就可以使用${}进行取值
如分库分表操作 按照年份分表拆分了
select * from ${year}_salary where ......;
排序
select * from table order by ${name} ${order}
#{key}和${key} 取值的区别相关推荐
- 参数处理:#{}与${}取值的区别
2019独角兽企业重金招聘Python工程师标准>>> #{}与${}都可以从传递的参数中取得对应的值,而且每种取值的写法都一样,不同在于 1.${}是采用SQL拼接的方式 2.在不 ...
- Map中的key,value null取值
- v-model获取值与.value取值的区别(v-model原理分析)
vue中使用v-model在表单元素上创建双向数据绑定,在官方文档中简单的提到了它的本质只是一个语法糖,在单向数据绑定的基础上,增加了监听用户输入事件并更新数据的功能: 对,它本质上只是一个语法糖,但 ...
- springboot的redis工具类编写(采用RedisTemplate)(简单的取值,取多个值)。
首先: redis存在于内存中,因此非常高效 存储特点是key-value 其还有许多高效的数据结构,能同时读写几万数据量. 在springboot中运用redis做一些验证存储非常管用, 同时因为r ...
- datetime 比较_Python 字典中key命中取值的两种方法性能比较!
起步 从字典中取值有两个方法,一个是先判断key是否在字典中再取值:另一个是包裹try块中直接去取值: Python资源共享群:484031800 def use_in(d, key):if key ...
- GridView的多主键(Key)取值问题
GridView的多主键(Key)取值问题! DataKeyNames="test1,test2" strPath = Me.GridView1.DataKeys(e.RowInd ...
- 源生JS 之对象key值为数字时的取值及修改key值方法
取值: 如果对象key值为数字使用.key(.0)无法取到对应值: 只需稍加修改obj.['0']即可取到对应值. 修改: 与取值同理: 打印效果对比处理前后: 可以看到将原始key值为0.1.2修改 ...
- 后端获取接口数据属性为中文JSON取值(key是中文或者数字)处理方法
JSON取值(key是中文或者数字)方式详解 先准备一个json对象用于演示 var json = {'name':'zhangsan', '年龄':23, 404:'你可能迷路了'}; 1.使用JS ...
- Js 中对 Json 数据的取值设值方式 ( 如何取 key 中含 . 的值 )
JSON 是轻量级的文本数据交换格式,独立于语言,JSON 比 XML 更小.更快,更易解析.熟练运用Json是程序猿内需! var person = {id:001,name:"MoTec ...
最新文章
- 深入浅出卷积神经网络及实现!
- Django的前世今生
- linux shell ls 获取绝对路径
- Web开发框架–第1部分:选项和标准
- matlab空格会消失了,如何在Matlab中自动删除保存的尾随空格?
- 【CodeForces - 255C】Almost Arithmetical Progression (dp,离散化)
- 信息学奥赛一本通C++语言——1001:Hello,World!
- ASP.NET MVC铵钮Click后下载文件
- Nginx下Uwsgi模块常用参数说明
- 9000.消息中间件MQTT
- 如何才能降低真机测试成本和建议所使用平台
- 解决Android Studio默认AppTheme 没有lable标签,不显示等问题
- 八种常用排序算法参考
- linux 进程意外关闭,Webdriver异常:进程意外关闭,状态为1
- SPSS 进行两因素重复测量方差分析(Two-way repeated-measures ANOVA)详细操作步骤 (上)
- 三角网导线平差实例_导线平差自动计算表(非常实用)
- 深拷贝和浅拷贝的区别(必须掌握)
- 基于FPGA数字时钟的设计(附源码)
- java设置pdf不可编辑_Java动态生成pdf文件(使用itext编辑pdf)
- 全国联动css,CSS3 齿轮啮合联动动画