mybatis #与$的区别
2016-12-15 14:51
218 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_35157965/article/details/53670559
网上有很多这方面的博客,在自己上面写个只是为了方便以后回顾!
2.动态sql是mybatis的强大特性之一,也是它优于其他ORM框架的一个重要原因。mybatis在对sql语句进行预编译之
前,会对sql进行动态解析,解析为一个BoundSql对象,也是在此处对动态sql进行处理的。在动态sql解析阶段,
#{}和${}会有不同的表现。
#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的
值是111,那么解析成sql时的值为order by "111", 如果传入的值是id,则解析成的sql为order by "id".
$将传入的数据直接显示生成在sql中。如:order by $user_id$,如果传入的值是111,那么解析成sql时的值为order by 111, 如果传入的值是id,则解析成的sql为order by id.
3.能用#的地方就用#(性能问题,sql注入)
4.$方式一般用于传入数据库表名
因为#替换时会给表名加上“”,sql语法错误
相关文章推荐
- Hibernate与MyBatis的区别
- Mybatis中#与$的区别
- ibatis 到 MyBatis区别
- mybatis中的#和$的区别
- mybatis(三) #{}和${} parameterType 和resultType selectOne和selectList mybatis和hibernate的本质 区别
- MyBatis学习总结_13_Mybatis查询之resultMap和resultType区别
- Mybatis 中 ${} 和 #{} 区别
- mybatis之 # 与 $ 区别以及 sql 预编译
- mybatis 中#与$的区别
- mybatis中#{}和${}的区别于用法
- mybatis中的#号和$号的区别
- mybatis中#{}和${}传参的区别
- mybatis xml中#与$的区别
- Mybatis实战注意事项(三)${}和#{}的q区别
- mybatis中的#和$的区别
- Hibernate和Mybatis的区别
- Mybatis中输出映射-resultType与resultMap的区别
- mybatis两种接收参数的方式#{args}和${args}的区别小知识
- hibernate和mybatis的区别
- mybatis中的#和$的区别