Mybatis利用OGNL表达式处理动态sql的方法教程
本文介绍的是关于Mybatis中用OGNL表达式处理动态sql的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍:
常用的Mybatis动态sql标签有6种:
1.if语句(简单的条件判断)
2.choose(when,otherwize),相当于Java语言中的switch,与jstl中的choose很类似.
3.trim(对包含的内容加上prefix,或者suffix等,前缀,后缀)
4.where(主要是用来简化sql语句中where条件判断的,能智能的处理andor,不必担心多余导致语法错误)
5.set(主要用于更新时)
6.foreach(在实现mybatisin语句查询时特别有用)
(1)if
模糊查询
SELECT*FROMUserWHEREAge=‘18' ANDnamelike#{name}
年龄18且可以模糊搜索姓名
(2)choose,when,otherwize
当Job参数有传入时,就找出对应工作的人,否则就找出Job为none的人,而不是所有人
SELECT*FROMUserWHEREAge=‘18' ANDJob=#{Job} ANDJob="none"
(3)foreach
select*fromUserwhereidin #{item} publicList select5(List ids);
(4)wheresettrim
where,set
为什么要用where,因为单纯的写where可能会导致whereAnd...和where.....情况的发生,Set也是一样的
当然trim标签是万能的
SELECT*FROMUser Age=#{Age} ANDJoblike#{Job} updateUser whereid=#{id} username=#{username}, password=#{password}, Age=#{Age}
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对毛票票的支持。