2019/11/30 mybatis学习记录 一对多,多对一,多对多关系
1.Mybatis中写JDBC type 时所对应的Java Type类型
例子:
2.resultMap的两种写法
第一种是嵌套写法:
注意与多对一的Association写法的区别,上面一对多是ofType 下面多对一是 javaType!!!
第二种是单独列出一个文件,即非嵌套的方法:
关于mybatis一对多查询的别名问题
两个表中如果有相同的字段,必须写别名!!!
一个分类对应多个产品
如 : Category表中有两个字段id name
product中有与category相同的两个字段:id name
如该例子所示:写一对多查询语句时,对id,name必须起别名
对其他属性可以起别名也可以不起,但是取了别名一定要用别名
在下面的sql语句起了别名后 在resultMap里配置数据库的名字是必须写别名字段,没有起别名的可以直接写数据库所对应的字段。
然后在数据库查询出来是这样子的:
可见 取了别名之后所查询出来的字段也会随之变化
关于mybatis多对一查询
在此案例中 一个分类对应多个产品,而一个产品对应一个分类 cid对应的是种类号
关键代码:
还是同样的sql语句,只是这次把结果存在了Product当中