数据库的多表关联查询问题
准备老师和学生的实体类
老师和学生的class文件.java文件里边
老师内有学生的list,如 private List<Student> students
学生内有老师的list,如 private List<Teacher> teachers
然后生成get set 方法和tostring方法
1.如果要通过老师查学生,就要准备老师的mapper即TeacherMapper.xml
sqlMapConfig: class文件如果改名了,src中引入数据的数据库引入
配置文件sqlMapConfig中也得改成BossMapper.xml
TeacherMapper.xml: 接着sql映射文件BossMapper中 mapper标签中的 namespace属性也得改成TeacherMapper
然后,在mapper标签中写查询标签select 接着在select开始标签中写id ="findAllTeacher"
继续,在select标签中写查询语句
跟上,开始标签中结果集封装,多表查询用resultMap="TeacherRM"
follow me,在查询标签select上边写resultMap 因为查询出来的数据先封装在Teacher里边
所以要在resultMap的开始标签里边写 type ="包名.Teacher" id = "TeacherRM" 最后边加上自动注入语句 autoMapping="true"
接着在resultMap标签内部 手动注入 一致的自动注入,不一致的手动注入
主键 <id colum="t_id" 对应的property="id"/>
名字 <result colum="t_name" property="name"/>
老师里边还有多个学生
<collection property="students" ofType="包名.Student">
主键 <id colum="s_id" 对应的property="id"/>
准备老师和学生的实体类
老师和学生的class文件.java文件里边
老师内有学生的list,如 private List<Student> students
学生内有老师的list,如 private List<Teacher> teachers
然后生成get set 方法和tostring方法
1.如果要通过老师查学生,就要准备老师的mapper即TeacherMapper.xml
sqlMapConfig: class文件如果改名了,src中引入数据的数据库引入
配置文件sqlMapConfig中也得改成BossMapper.xml
TeacherMapper.xml: 接着sql映射文件BossMapper中 mapper标签中的 namespace属性也得改成TeacherMapper
然后,在mapper标签中写查询标签select 接着在select开始标签中写id ="findAllTeacher"
继续,在select标签中写查询语句
跟上,开始标签中结果集封装,多表查询用resultMap="TeacherRM"
follow me,在查询标签select上边写resultMap 因为查询出来的数据先封装在Teacher里边
所以要在resultMap的开始标签里边写 type ="包名.Teacher" id = "TeacherRM" 最后边加上自动注入语句 autoMapping="true"
接着在resultMap标签内部 手动注入 一致的自动注入,不一致的手动注入
主键 <id colum="t_id" 对应的property="id"/>
名字 <result colum="t_name" property="name"/>
老师里边还有多个学生
<collection property="students" ofType="包名.Student">
主键 <id colum="s_id" 对应的property="id"/>
名字 <result colum="s_name" property="name"/>
未完待续。