一对多以及多对一:

  1. package com.study.pojo;
  2. import lombok.Data;
  3. @Data
  4. public class Student {
  5. private int id;
  6. private String name;
  7. private int tid;
  8. }
package com.study.pojo;

import lombok.Data;

import java.util.List;

@Data
public class Teacher {
    private int id;
    private String name;

    //一对多
    List<Student> students;
}
  • Xml配置

  • <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE mapper
          PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
          "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <mapper namespace="com.study.dao.TeacherMapper">
       <select id="getStudent" resultMap="TeacherStudent">
           select t.id tid, t.name tname, s.id sid, s.name sname
          from student s join teacher t on s.tid = t.id and t.id = #{tid};
       </select>
    
      <resultMap id="TeacherStudent" type="Teacher">
          <id property="id" column="id"/>
          <result property="name" column="name"/>
          <collection property="students" ofType="Student">
              <id property="id" column="sid"/>
              <result property="name" column="sname"/>
              <result property="tid" column="tid"/>
          </collection>
      </resultMap>
    </mapper>
    

Mysql引擎

InnoDB底层原理

索引

索引优化!