两种方式:注解方式和xml方式
注解方式
int save(List<student> infos);
@Insert("<script> insert into student (id,name,sex,age) values <foreach collection='list' item='item' index='index' separator=','> (#{item.id},#{item.name},#{item.sex},#{item.age})</foreach></script>")
public int save(List<student> infos);
int delete(String[] pvs);
@Update("<script>delete from student where id in <foreach item='id' collection='array' open='(' separator=',' close=')'> #{id} </foreach></script>")
public int delete(String[] pvs);
注意:当传入的参数为list或者数组类型,collection分别为collection=‘list’ 或者collection=‘array’
或者在参数上加入@Param注解
如下:
int save(@Param("studentList")List<student> infos);
@Insert("<script> insert into student (id,name,sex,age) values <foreach collection='studentList' item='item' index='index' separator=','> (#{item.id},#{item.name},#{item.sex},#{item.age})</foreach></script>")
public int save(List<student> infos);
int delete(@Param("ids")String[] pvs);
@Update("<script>delete from student where id in <foreach item='id' collection='ids' open='(' separator=',' close=')'> #{id} </foreach></script>")
public int delete(String[] pvs);
xml方式
int save(List<student> infos);
<insert id="save" parameterType="com.example.demo.entity.student">
insert into student (id,name,sex,age) values
<foreach collection="list" item="item" index="index" separator=",">
(#{item.id},#{item.name},#{item.sex},#{item.age})
</foreach>
</insert>
int delete(String[] pvs);
<delete id="delete" parameterType="java.lang.String">
delete from student where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
collection与上相同