创建学生实体类对象:
.java
package com.etime.pojo;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;import java.io.Serializable;import java.util.List;@AllArgsConstructor@NoArgsConstructor@Datapublic class Student implements Serializable {private int sid;private String sname;private int cid;private List
创建学生和课程的关系表的实体类:
.java
package com.etime.pojo;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;@NoArgsConstructor@AllArgsConstructor@Datapublic class StudentCourse {private int scid;private int sid;private int courseid;private Course course;}
创建课程.java接口查询数据:
package com.etime.mapper;import com.etime.pojo.Course;import org.apache.ibatis.annotations.Select;public interface CourseMapper {//由课程id到课程表中进行查询课程信息@Select("select * from course where courseid=#{courseid}")Course getCourseByCourseid(int courseid);}
创建学生.java接口查询数据处理:
package com.etime.mapper;import com.etime.pojo.Classes;import com.etime.pojo.Student;import org.apache.ibatis.annotations.*;import java.util.List;public interface StudentMapper {//使用@Select查询所有学生信息//通过@Result注解中的属性many = @Many进行数据处理,将得到的课程对象返回到学生实体类对象studentCourseList中@Select("select * from student")@Results({@Result(property = "sid",column = "sid"),@Result(property = "sname",column = "sname"),@Result(property = "cid",column = "cid"),@Result(property = "studentCourseList",javaType = List.class,column = "sid",many = @Many(select = "com.etime.mapper.StudentCourseMapper.getStudentCourseBySid"))})List
创建学生课程接口.java查询数据,对数据进行处理:
package com.etime.mapper;import com.etime.pojo.Course;import com.etime.pojo.StudentCourse;import org.apache.ibatis.annotations.One;import org.apache.ibatis.annotations.Result;import org.apache.ibatis.annotations.Results;import org.apache.ibatis.annotations.Select;import java.util.List;public interface StudentCourseMapper {//@Select同样的通过注解的方式对数据进行全部查询,处理的通过id查询到的课程单个实体类@Select("select * from studentcourse where sid=#{sid}")@Results({@Result(property = "scid",column = "scid"),@Result(property = "sid",column = "sid"),@Result(property = "courseid",column = "courseid"),@Result(property = "course",javaType = Course.class,column = "courseid",one = @One(select = "com.etime.mapper.CourseMapper.getCourseByCourseid"))})//根据学生id查找所有课程对应的idList
通过上述的以系列操作,咱们是能够通过注解的方式查询到多对多的关系数据的:
运行结果如图:
- 调鱼漂方法 最简单的调鱼漂方法
- 梁思成和林徽因的婚姻梁思成为什么要再娶 林徽因梁思成在哪里结的婚
- 依然的意思 青春依然的意思
- 来到火影的我不可能这么污 火影忍者里面超污
- 弱弱地问:我一个17岁的高中生,想解决世界难题怎么办?
- 中国联通激进推动2G退网很可能搬石头砸自己的脚
- 黄梅时节家家雨青草池塘处处蛙 黄梅时节家家雨青草池塘处处蛙营造了怎样的氛围
- 2018-2019
- 炮楼by巫哲 炮楼by巫哲讲的什么
- 一个简单的温度上下限报警器