批量删除:
<delete id="deleteById" parameterType="int">
delete from emp where empId=#{id}
</delete>
<!-- 批量删除 -->
<delete id="batchDelete">
<![CDATA[
delete from emp where empid in
]]>
<foreach collection="array" separator="," item="d" open="(" close=")">
#{d}
</foreach>
</delete>
批量新增:
<!-- 新增数据不需要返回结果,不用配置resultType参数 -->
<insert id="add" parameterType="com.ht.vo.EmpVo">
<!--
配置主键回填功能,
前提条件:主键是由数据库自动生成的情况下才需要配置主键回填
order=AFTER|BEFORE(新增成功之前,还是新增成功之后返回主键的值,SQL SERVER,MYSQL中用AFTER,Oracle中用BEFORE)
-->
<selectKey keyColumn="empId" keyProperty="empId" resultType="int" order="AFTER">
select LAST_INSERT_ID()
</selectKey>
<![CDATA[
INSERT into emp(empName,password,age,sex,job,status,remark,depId) values(#{empName},#{password},#{age},#{sex},#{job},#{status},#{remark},#{depId})
]]>
</insert>
<!-- 批量新增-->
<insert id="batchAdd" parameterType="list">
<![CDATA[
INSERT into emp(empName,password,age,sex,job,status,remark,depId) values
]]>
<!-- 使用foreach实现批量新增 -->
<foreach collection="list" item="item" separator=",">
(#{item.empName},#{item.password},#{item.age},#{item.sex},#{item.job},#{item.status},#{item.remark},#{item.depId})
</foreach>
</insert>