博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis标签
阅读量:6913 次
发布时间:2019-06-27

本文共 1297 字,大约阅读时间需要 4 分钟。

hot3.png

增删改查

从标签名称可以看出分别表示了sql语句中的select、insert、update、delete

id:标签的标识,同命名空间唯一
parameterType:参数类型,基本数据类型直接写类型名,自定义类型或不在java.lang包下的类写全路径如java.util.date
resultMap:返回值类型,需自定义resultMap标签

返回值类型

参数:

id:resultMap的标识,命名空间唯一
type:对应的bean类型,需要写全路径

字标签:

id:主键
result:非主键

子标签参数:

column:查询结果中的字段名(不是数据库字段名,如果用了AS,则为自定义的名称)
jdbcType:该字段的类型,如INTEGER,VARCHAR等
property:bean中的变量名

流程控制

遍历

collection:要遍历的集合

item:当前遍历到的对象
separator:遍历到的对象之前的分隔符
index:当前遍历对象的索引

单条件分支

test:判断语句,使用OGNL表达式

多条件分支

test:判断语句,使用OGNL表达式

该标签相当于java中的

if (){ }else if (){ }else if (){ }else if (){ }else if (){ }else{ }

格式控制

where

在该标签中拼接sql语句,如果内部有语句则自动拼接where关键词。多条语句之前的and/or会根据是否存在其他条件而决定是否删除。例如只有一条判断语句,则该语句前的and/or将自动删除

set

在该标签中拼接sql语句,如果内部有语句则自动拼接set关键词。多条语句后的逗号会根据是否存在其他条件而决定是否删除。例如只有一条判断语句,则该语句后的逗号将自动删除

trim

trim原理同where和set标签,只是多了自定义属性,可模仿上述两句定义自己需要的标签

多表关系

一对多关系

该标签需要写在resultMap中,用来表示当前模型所包含的多个子模型,相当于表关系中的一对多关系

property:bean中对应的变量名
resultMap:子模型的resultMap标识

多对一关系

该标签需要写在resultMap中,用来表示当前模型所属的父模型,相当于表关系中的多对一关系

property:bean中对应的变量名
resultMap:父模型的resultMap标识

语句定义与引用

sql标签内定义一个字符串,include在需要书写sql语句的地方将其引入,省去重复书写sql语句的过程。

转载于:https://my.oschina.net/u/3099393/blog/798312

你可能感兴趣的文章
【译】ZFS最佳实践指南-Part4
查看>>
LINUX环境OGG同步测试
查看>>
excel VBA编程入门教程
查看>>
Apache Rewrite实现URL的跳转和域名跳转
查看>>
5.3Python数据处理篇之Sympy系列(三)---简化操作
查看>>
系统调优之二CPU子系统
查看>>
Windows Server 2012 NIC功能
查看>>
Goldengate双向复制配置
查看>>
sshd 已死 但是subsys被锁或者Sshd dead but subsys locked
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
在主引导记录(MBR)的救援模式下如何重新安装GRUB引导装载程序
查看>>
我的友情链接
查看>>
git的基本使用和示例
查看>>
用户管理
查看>>
从输入 URL 到页面加载完的过程中都发生了什么事情?
查看>>
揭秘Windows Server2012 核心虚拟化技术Hyper-V
查看>>
java参数传递(值传递还是引用传递)
查看>>
去除文本中重复的行方法
查看>>
On Stack Replacement and JIT
查看>>