先直接说用法:
一般参数传递用#{},在sql相当于占位符,sql执行时参数带引号“”
在进行group by 或order by 的时候,使用${},sql执行的时候不带引号
原则:能用#的地方不要用$,避免sql注入,安全
列个例子供参考:
1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111", 如果传入的值是id,则解析成的sql为order by "id".
2. $将传入的数据直接显示生成在sql中。如:order by $user_id$,如果传入的值是111,那么解析成sql时的值为order by user_id, 如果传入的值是id,则解析成的sql为order by id.
最后
以上就是精明鼠标最近收集整理的关于mybatis中的sql语句中#{}和${}的区别的全部内容,更多相关mybatis中内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复