MyBatis动态sql小结(一)
来源:互联网 发布:c语言学徒招聘 编辑:程序博客网 时间:2024/06/03 15:49
一.MyBatis的动态SQL在XML中支持的几种标签:
1.if
2.choose(when,otherwise)
3.trim(where,set)
4.foreach
5.bind
1.1if的用法
1.1.1在where条件中使用if
先举一个例子,我们在多条件搜索时,当你的条件为空时,查询所有。但是当你选择各种不同的选项时,在where条件中就会加上不同的条件。
if标签有一个必填的属性test,test的属性值是一个符合OGNL要求的判断表达式,表达式的结果可以是true和false,除此之外多有的非0值都为true,只有0为false。
这里需要注意的一点是where之后的那个1=1,因为如果后面的两个if判断都为false时,不会出现where后面语法不正确。还要值得注意的是其中的and和or,就是必须考虑条件为真为假的情况下,你的sql的语法必须都是正确的。
1.1.2在update更新中使用if
一样的,当更新一条数据时,对传入的参数进行非空判断,然后更新字段信息。
update sys_user set user_name = #{userName}, user_password = #{userPassword}, id = #{id} where id= #{id}
1.1.3在insert中使用if
在数据库中插入数据的时候,如果某一列的参数值不为空,使用传入的值,如果传入值为空则使用默认值。
insert into sys_user( user_name,user_password, user_email, user_info,head_img,create_time) values( #{userName},#{userPassword},#{userEmail}, #{userInfo},#{headImg,jdbcType = BOLB},#{createTime,jdbcType = TIMESTAMP})
阅读全文
0 0
- MyBatis动态sql小结(一)
- Mybatis 动态sql 小结
- MyBatis动态sql小结(二)
- MyBatis动态sql小结(三)
- Mybatis小结之动态sql
- Mybatis(八)-一动态SQL
- MyBatis动态sql详解(一)
- mybatis 之 动态sql(一)choose标签的使用
- mybatis的动态SQL(一)if标签的使用
- SQL小结(一)
- MyBatis(3):MyBatis的动态SQL
- Mybatis总结(6)---Mybatis动态sql
- 框架学习系列 mybatis 第十四篇 mybatis动态sql一
- mybatis(6)动态sql
- MyBatis动态SQL(1)
- MyBatis动态SQL(2)
- MyBatis(4):动态SQL
- MyBatis(4):动态SQL
- Python如何从相对路径下import
- 聊天机器人5步重塑酒店业
- ArcEingine属性表读取并加载到GridView
- 【Python】Matplotlib画图(七)——线的颜色、点的形状
- 9月8日云栖精选夜读:杭城上演阿里巴巴“春运”大片……
- MyBatis动态sql小结(一)
- 高二&高一模拟赛13 总结
- QT中给各控件增加背景图片(可缩放可旋转)的几种方法
- Synchronized的原理
- 学习笔记 2017年9月12日
- 又一惊喜!!还记得那个2000块组装出iPhone 6S的老外吗?
- dubbo深入理解(1)
- day10--进程
- 【DP】放苹果问题