定制制作网站哪家好,石家庄有做网站的公司吗,百度搜索引擎地址,互联网广告行业前景一、MyBatis关联查询
在关系型数据库中#xff0c;表与表之间存在着3种关联映射关系#xff0c;分别为一对一、一对多、多对多。 一对一#xff1a;一个数据表中的一条记录最多可以与另一个数据表中的一条记录相关。列如学生与学号就属于一对一关系。
一对多#xff1a;主…一、MyBatis关联查询
在关系型数据库中表与表之间存在着3种关联映射关系分别为一对一、一对多、多对多。 一对一一个数据表中的一条记录最多可以与另一个数据表中的一条记录相关。列如学生与学号就属于一对一关系。
一对多主键数据表中的一条记录可以与另外一个数据表任意数量的记录相关另外一个数据表中的一条记录只能与主键数据表中的某一条记录相关。列如班级与学生就属于一对多关系。
多对多一个数据表中的一条记录可以与另外一个数据表任意数量的记录相关另外一个数据表中的一条记录也可以与本数据表中任意数量的记录相关。列如学生和老师就属于多对多关系。
1、MyBatis一对一关联查询
在MyBatis中通过association元素来处理一对一关联关系。
association元素提供了一系列属性用于维护数据表之间的关系。
association元素中的属性如下表所示 注意接口文件的路径和配制映射文件的路径不一样详情见下图 association元素的示例配置如下 - - 方式一嵌套查询--association propertycard columncard_id javaTypecom.Jorya.model.StudentIdCardselectcom.Jorya.mapper.StudentIdCardMapper.findCodeById/!-- 方式二 嵌套结果--
association propertycard javaTypecom.Jorya.Model.StudentIdCardid propertyid columncard_id/result propertycode columncode/
/association2、MyBatis一对多关联查询
MyBatis中有一个 resultMap元素其中包含了一个 collection子元素MyBatis通过这个子元素来处理一对多联系。 collection子元素的属性大部分与 association元素相同其中包含了一个特殊元素——ofTypeofType与javaType对应用于指定实体对象中集合类属性所包含的元素类型。 collection元素的示例配置如下
!--嵌套查询
collection propertyordersList columnidofTypecon.itheima.po.Ordersselectcom.itheima.mapper.OrderMapper.selectOrders/
!--嵌套结果--
collection propertyorderList ofTypecom.itheima.po.Ordersid propertyid columnorders_id/result propertynumber columnnumber/
/collection3、MyBatis多对多关联查询
通过resultMap的collection元素实现
collection /是mybatis处理多对多关系的是指拿到一个集合propertylistRight的内容是对应你model层表中表示多对多关系的属性名 fetchType表示是懒加载还是立刻加载
select表示是选择关联关系的哪个方法获取数据
column表示传到映射关系的列的值