一对多
Mysql一对多写法
可以看到在mysql里面是没有一对多效果的,一的一端数据会跟随多的一端重复。
但是我们在后端处理的时候,肯定是想要一对多关系数据的“一”不重复,这样比较好处理,对前端处理数据也比较友好
resultMap
配置一个resultMap,指明这个数组指向哪个类,数组名是什么,然后写清楚collection下分别有哪些参数,参数名和对应的数据库字段名。
<resultMap id="resultTemplateInfo" type="com.sample.bean.TemplateCollect"><result property="TcollecName" column="Tcollec_name"></result><result property="TcollecCount" column="Tcollec_count"></result><result property="TcollecVolume" column="Tcollec_volume"></result><collection property="procList" ofType="com.sample.bean.TemplateProc"><id property="TprocId" column="Tproc_id" ></id><result property="TprocName" column="Tproc_name" ></result><result property="TprocCount" column="Tproc_count" ></result><result property="TprocVolume" column="Tproc_volume" ></result></collection></resultMap><select id="selectTemplateCollec" resultMap="resultTemplateInfo" parameterType="String">SELECTTcollec_name,Tcollec_count,Tcollec_volume,Tproc_name,Tproc_count,Tproc_volume,Tproc_unitFROMtemplate_collect,template_proc,templateWHEREtemplate_name = "模板1"AND template_collect.template_id = template.template_idAND template_proc.Tcollec_id = template_collect.Tcollec_id</select>
