一、创建Person_class表。
添加属性classid和classname;
设置外键。
二、创建实体类:
package org.ruangong.entity; import java.util.List; public class PersonClass { private int classid; private String classname; List<Person> person; public int getClassid() { return classid; } public void setClassid(int classid) { this.classid = classid; } public String getClassname() { return classname; } @Override public String toString() { return "PersonClass [classid=" + classid + ", classname=" + classname + ", person=" + person + "]"; } public void setClassname(String classname) { this.classname = classname; } }
在personMapper.xml中添加:
<!-- 一对多关联查询 --> <select id="queryPerson_cardId3" resultMap="class_persons_map" parameterType="int"> select C.*,P.* from person2 P inner join person_class C on C.classid = P.classid where C.classid = #{classid} </select> <resultMap type="PersonClass" id="class_persons_map"> <id property="classid" column="classid"/> <result property="classname" column="classname"/> <!-- 一对多用collection --> <collection property="person" ofType="Person"> <id property="id" column="id"/> <result property="name" column="name"/> <result property="age" column="age"/> <result property="persex" column="sex"/> </collection> </resultMap>
在resultMap标签中,若为一对多表关联,那么在这里必须使用collection标签,若为一对一就是用association标签。
然后要注意若返回值为集合元素,那么必须使用ofType,如果是对象就是用javaType。