Mybatis 004 ResultMap及多表联查

简单的ResultMap

 


    
    
    
    


resultMap的id就是为了方便sql语句映射的时候使用,resultMap对应的就是他的id,type就是真正返回的类型。

result是为了映射数据属性,column是数据库里的列名,property是POJO的属性名。

id是主键,column是数据库里的列名,property是POJO的属性名。

 

一对一映射

 

学生表

Mybatis 004 ResultMap及多表联查_第1张图片

地址表

学生表中包含ADDR_ID字段指向地址表的ADDR_ID主键。

学生类:

public class Student
{
    private Integer studId;
    private String name;
    private String email;
    private PhoneNumber phone;
    private Address address;
    //setters & getters
}

地址类:

public class Address
{
    private Integer addrId;
    private String street;
    private String city;
    private String state;
    private String zip;
    private String country;
    // setters & getters
}

查询语句:

映射关系:


    
    
    
    
    
    



    
    
    
    

 

一对多映射

 

教师表

Mybatis 004 ResultMap及多表联查_第2张图片

课程表

Mybatis 004 ResultMap及多表联查_第3张图片 

一个教师对应多个课程,属于1:N的关系

课程类

public class Course
{
    private Integer courseId;
    private String name;
    private String description;
    private Date startDate;
    private Date endDate;
    private Integer tutorId;
    //setters & getters
}

教师类

public class Tutor
{
    private Integer tutorId;
    private String name;
    private String email;
    private Address address;
    private List courses;
    //setters & getters
}

教师类中使用List包含多个课程。

查询语句

映射关系


    
    
    
    



    
    
    
    
    

 

你可能感兴趣的:(数据库)