批量插入输入,参数的类型为 resultMap中的形式
id是接口方法名
parameterType是参数类型,解析见关于parameterType的解释
keyProperty是Pojo中Java 实体类对象的属性名(keyproperty指明数据库中返回的主键id给实体类中的哪个属性)
useGeneratedKeys =true 这个表示插入数据之后 返回 一个自增的主键id给你对应实体类中的主键属性
<insert id="insertBatch" parameterType="CerComponent" useGeneratedKeys="true" keyProperty="id" >
insert into cer_book_component(id,book_id,cmpt_name,work_name,rate_time,real_time,count_down,cmpt_type,cmpt_left,cmpt_top,
cmpt_width,cmpt_height,cmpt_line,cmpt_operator,cmpt_role,cmpt_user,num_begin,num_end,is_equal_begin,is_equal_end,num_point,
font_size,font_name,file_path,is_required) values
<foreach item="item" collection="list" separator=",">
(#{item.id},#{item.bookId},#{item.cmptName},#{item.workName},#{item.rateTime},#{item.realTime},#{item.countDown},#{item.cmptType},
#{item.cmptLeft},#{item.cmptTop},#{item.cmptWidth},#{item.cmptHeight},#{item.cmptLine},#{item.cmptOperator},#{item.cmptRole},
#{item.cmptUser},#{item.numBegin},#{item.numEnd},#{item.isEqualBegin},#{item.isEqualEnd},#{item.numPoint},
#{item.fontSize},#{item.fontName},#{item.filePath},#{item.isRequired})
</foreach>
</insert>
<resultMap id="CerComponent" type="CerComponentResult">
<result property="id" column="id" />
<result property="bookId" column="book_id" />
<result property="cmptName" column="cmpt_name" />
<result property="workName" column="work_name" />
<result property="rateTime" column="rate_time" />
<result property="realTime" column="real_time" />
<result property="countDown" column="count_down" />
<result property="cmptType" column="cmpt_type" />
<result property="cmptTypeName" column="cmpt_type_name" />
<result property="cmptLeft" column="cmpt_left" />
<result property="cmptTop" column="cmpt_top" />
<result property="cmptWidth" column="cmpt_width" />
<result property="cmptHeight" column="cmpt_height" />
<result property="cmptLine" column="cmpt_line" />
<result property="cmptOperator" column="cmpt_operator" />
<result property="cmptRole" column="cmpt_role" />
<result property="cmptUser" column="cmpt_user" />
<result property="numBegin" column="num_begin" />
<result property="numEnd" column="num_end" />
<result property="isEqualBegin" column="is_equal_begin" />
<result property="isEqualEnd" column="is_equal_end" />
<result property="numPoint" column="num_point" />
<result property="fontSize" column="font_size" />
<result property="fontName" column="font_name" />
<result property="filePath" column="file_path" />
<result property="isRequired" column="is_required" />
<result property="isLimit" column="is_limit" />
</resultMap>
关于parameterType和resultType请查看原文博主解释,此处不做过多解释
mybatis传入参数类型parameterType和输出结果类型resultType详解