博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis关联查询,一对一,一对多
阅读量:5291 次
发布时间:2019-06-14

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

注:这篇文章的代码有部分删减,不能直接使用,不过关键代码都存在 

应用场景:

   想用mybatis做关联查询,并且把查询出的数据自动组装成对象可以使用关联查询。

1、一对一实现  

例如:一部小说,属于一个分类,查询小说的时候想同时查询出所属分类。

1)实体定义:

public class Book {    private static final long serialVersionUID = 1L;        /**     *小说ID     */    private Integer bookId;    /**     *作者     */    private String author;    /**     *小说名称     */    private String bookName;    /**    /**     *分类ID     */    private Integer catalogId;        private CrawlCatalog catalog;}
public class Catalog  {    private static final long serialVersionUID = 1L;        /**     *分类ID     */    private Integer catalogId;    /**     *分类名字     */    private String name;}

2) BookMapper实现

  

 

2、多对一实现

例如:一个用户在商城生成了一个订单,订单中包含很多商品,想在查询订单的同时把订单的明细查询出来

1)实体定义

public class Order {    /** 主键订单Id */    private Integer id;    /** 下单用户id */    private Integer userid;    // 订单明细    private List
orderdetails;}
public class OrderDetail {    /** 主鍵,訂單明细表Id */    private Integer id;    /** 訂單Id */    private Integer orderId;    /** 商品id */    private Integer itemsId;    /** 商品购买数量 */    private Integer itemsNum;    // 明细对应的商品信息    private Items items;}

 

2)OrderMapper实现

 

posted on
2016-06-06 15:46 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/yinkh/p/5564033.html

你可能感兴趣的文章
java线程池原理
查看>>
为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来?...
查看>>
Could not resolve view with name '***' in servlet with name 'dispatcher'
查看>>
springBoot配置elasticsearch搜索
查看>>
Chapter 3 Phenomenon——12
查看>>
MyBatis源码解析【6】SqlSession运行
查看>>
中小学教育缴费遇到的一些问题
查看>>
FAIR开源Detectron:整合全部顶尖目标检测算法
查看>>
C语言中求最大最小值的库函数
查看>>
SRS
查看>>
14.typescript-类与接口
查看>>
js学习(精华帖)
查看>>
和小哥哥一起刷洛谷(1)
查看>>
分享squid缓存服务器配置-之conf配置文件的详细介绍
查看>>
jQuery教程详解(一)
查看>>
jquery对id中含有特殊字符的转义处理
查看>>
DP学习之路(1) 01背包
查看>>
获取元素样式信息于三中获取方式的区别
查看>>
测试主要环节
查看>>
08-17工作总结
查看>>