mybatis 动态sql和参数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis 动态sql和参数相关的知识,希望对你有一定的参考价值。

参考技术A 动态SQL,就是根据条件拼接的条件吧。
比如:if、where等等条件,都是动态sql的标签。
参数:就是#$两个标签,注意下$可能会导致sql注入的问题就可以了。

mybatis动态sql #和$的区别

$和#都支持动态sql;就是你传什么它就是什么

区别:

  1.#可以防止sql注入在sql执行时显示 ‘?‘ 比$安全

    SELECT * FROM table WHERE id = ?

  2.在使用#传入参数在sql解析的时候回默认为参数加上‘‘;$则不会

    SELECT * FROM table WHERE id = ‘id‘

    SELECT * FROM table ORDER BY $(id) 解析 SELECT * FROM table ORDER BY id

以上是关于mybatis 动态sql和参数的主要内容,如果未能解决你的问题,请参考以下文章

MyBatis动态SQL和缓存

mybatis动态sql #和$的区别

mybatis动态sql中的两个内置参数(_parameter和_databaseId)

真正的Mybatis动态sql —MyBatis Dynamic SQL

mybatis—动态代理getMapper传入参数输出结果动态sql以及扩展的PageHelper分页

mybatis—动态代理getMapper传入参数输出结果动态sql以及扩展的PageHelper分页