ibatis如何配置动静态结合的where语句

ibatis如何配置动静态结合的where语句,第1张

1.

<dynamic prepend="where">..</dynamic>标签,即可此标签中间部分任一个条件为true时,会向当前的sql语句中添加一个"where"的字符.

2.

若只有一个判断条件时,可以直接用:

<isNotEmpty prepend="where" property="name">

name like '%$name$%'

</isNotEmpty>

3.

模糊查询:

在通常情况下ibatis的参数在sqlmap中使用#param#的形式,参数名以’#‘包着,但当使用模糊查询时,须将#改为$.如上.

4.

设置范围查询时,须用双重判断,又如:

<isNotEmpty prepend="" property="_starttime">

<isNotEmpty prepend="and" property="_endtime">

<![CDATA[

createtime >= #_starttime#

and createtime <#_endtime#

]]>

</isNotEmpty>

</isNotEmpty>

ibatis中,参数部分是用##表示的,这种格式的是字符串,会自动在内容两端加上单引号,$$表示的是原样输出,你这里有两个参数,且要求的是数值,所以要用$$,那么在ibatis的xml配置文件中,写法就是:

select *

from table

limit $count1$, $count2$.

而在java中,通过调用ibatis框架中的方法,将count1和count2变量的值传递进去就可以了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11545619.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存