批量删除:顾名思义就是一次性删除多个。删除是根据前台传给后台的id,那么所谓批量删除,就是将多个id传给后台,那么如何传过去呢,前后台的交互该如何实现?
1.jsp页面,先选中所有的要删除的数据,将多个id通过数组的形式传递给后台
<body>
<button type="button" class="btn btn-danger" id="dele">批量删除</button>
<table class="table table-hover">
<tr>
<th><input type="checkbox" id="check1"></th>
<th>序号</th>
<th>姓名</th>
<th>生日</th>
<th>图片</th>
<th>下载</th>
<th>操作</th>
</tr>
<c:forEach varStatus="status" items="${demos }" var="demo">
<tr>
<td><input type="checkbox" value="${demo.id }" class="checkbox">
</td>
<td>${status.index+1 }</td>
<td>${demo.uname }</td>
<td>
<fmt:formatDate value="${demo.borth }" pattern="yyyy-MM-dd"/>
</td>
<td>
<c:if test="${empty demo.image }">
<img src="${demo.image }">
</c:if>
</td>
<td>下载</td>
<td></td>
</tr>
</c:forEach>
</table>
<script type="text/javascript">
$(function(){
$("#check1").click(function(){
$("td > input").prop("checked",this.checked);
});
$("#dele").click(function(){
var idArr = new Array();
$.each($(".checkbox:checked"),function(){
//alert($(this).val());
idArr.push($(this).val());
});
$.ajax({
url:"${pageContext.request.contextPath}/deletes",
type:"POST",
traditional : "true",
dataType:"json",
data:{
"idArr":idArr
},
success:function(){
}
});
});
});
(2)controller
@RequestMapping(value="/deletes",method = RequestMethod.POST)
@ResponseBody
public String deletes(@RequestParam(value="idArr")String[] idArr) {
System.out.println("666");
List<Integer> list=new ArrayList<Integer>();
int ids;
for (String string : idArr) {
ids=Integer.parseInt(string);
list.add(ids);
}
demoService.deleteDemos(list);
return "success";
}
(3)dao
public void deleteDemos(@Param("ids")List<Integer> ids);
(4)mapper
<delete id="deleteDemos">
delete from demo where id in
<foreach collection="ids" item="item_id" separator="," open="(" close=")">
#{item_id}
</foreach>
</delete>
历史文章
springMVC中的日期格式的转化
项目中加入redis
重磅!大型分布式电商项目资料
计算机基础(二)
欢迎识别下方二维码,关注小编微信公众号,可以获取跟多Java资料:
七夕
好看你就点点我