mybatis #{} 和${}的区别 #{} 和${}中获取参数值

#{}中的中的内容会被当成字符串,会替换sql中的参数,不会拼接成sql运行 ,没有sql注入风险 。

在mappper.xml中
传递基本类型数据时可以 #{0},#{1}.....或者#{param1},#{param2}....或者#{id},#{name}这样获取参数值





${}中的内容会被直接拼接到sql中运行,${}中有sql话会运行其中的Sql,  有sql注入的风险。
在mapper.xml中可以根据模型属性获取传递过来的值  ,或者传递的是基本类型的数据 。
传递参数为对象(model)是可以 ${name} 直接填写对象属性来获取值
传递参数为基本类型数据时:只能${param1}  ,${param2}这样获取参数值。不能${0}或者${id}   。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值