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标签的主要内容,如果未能解决你的问题,请参考以下文章
MYBATIS05_ifwherechoosewhentrimsetforEach标签sql片段
mybatis动态sql之利用sql标签抽取可重用的sql片段
Mybatis -- 动态Sql概述动态Sql之<if>(包含<where>)动态Sql之<foreach>sql片段抽取