mybatis动态sql之bind标签

Posted 西西嘛呦

tags:

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

<select id="" resultType="">
    select * from tbl_employee where last_name like #{lastName}
</select>

一般我们进行模糊查询时,都会在java端输入:

 List<Employee> employees = mapper.getEmpByLastNameLike("%小%");

如果我们想在xml文件中进行这种处理:

"%#{lastName}%"

这样肯定是不行的,#{}只是个占位符,"%#{lastName}%"会被当做一整个字符串。

当然我们可以这样做:

"%${lastName}%"

但是这样不安全,此时就可以使用bin标签:

<select id="" resultType="">
    <bind name="_lastName" value="‘%‘+lastName+‘%‘"/>
    select * from tbl_employee where last_name like #{_lastName}
</select>

说明:bind标签中name是为该值取别名,value是其具体的值,可以使用ongl表达式。

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

MyBatis动态SQL标签用法

MYBATIS05_ifwherechoosewhentrimsetforEach标签sql片段

mybatis动态sql之利用sql标签抽取可重用的sql片段

Mybatis -- 动态Sql概述动态Sql之<if>(包含<where>)动态Sql之<foreach>sql片段抽取

6.mybatis里面的动态sql是怎么设定的,常用标签有那些以及其

Mybatis——Dao层实现映射文件深入核心配置文件深入