MyBatis关于多表查询和分页

本文详细介绍了MyBatis中的一对一、一对多和多对多查询,包括创建实体类、Mapper接口及映射文件的配置。此外,还探讨了MyBatis的typeHandlers和plugins标签,特别是PageHelper插件的使用,包括相关jar包的引入、配置和测试。
摘要由CSDN通过智能技术生成

1.1、一对一查询

用户表和订单表的关系为,一个用户有多个订单,一个订单只从属于一个用户
一对一查询的需求:查询一个订单,与此同时查询出该订单所属的用户。

1.1.2、创建User和Order实体类 User类

User类
public class User {
    
private Integer id;
private String username; 
private String password;
 //set和get方法 //toString方法 }
Order类
public class Order {
    
private Integer id; 
private Date ordertime; 
private Double total; 
//代表当前订单从属于哪一个客户,注意这个属性     
//原本order表中的uid用User类型的user代替了,表示order表和user表的对应关系
private User user; 
//set和get方法 
//toString方法 
}

1.1.3、创建OrderMapper接口

1.1.4、配置Order表对应的映射文件
OrderMapper.xml

//在selset里面的resultMap属性里面填写resultMap标签的id名
//第一种写法
<resultMap id="orderMap" type="order">
        <!--
        id标签是主键
        column是数据库表里面的列
        property是实体类里面的属性
        -->
        <id column="id" property="id"/>
        <result column="ordertime" property="ordertime"/>
        <result column="total" property="total"/>
        <result column="uid" property="user.id"/>
        <result column="username" property="user.username"/>
        <result column="password" property="user.password"/>
    </resultMap>
//第二种
 <!--常用的方法-->
    <resultMap id="orderMap" type="order">
        <!--
        id标签是主键
        column是数据库表里面的列
        property是实体类里面的属性,填属性名
        association:用于建立一对一的关系
        javaType:指定属性的类型
        -->
        <id column="id" property="id"/>
        <result column="ordertime" property="ordertime"/>
        <result column="total" property="total"/>
        <association property="user" javaType="user">
            <id column="uid" property="id"/>
            <result column
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值