整合SSM框架、快速开发CRUD项目
本文学习内容来自尚硅谷的视频 尚硅谷SSM实战演练丨ssm整合快速开发CRUD_哔哩哔哩_bilibili
删除
删除员工要求是可以单个删除和批量删除
单个删除
流程:点击删除按钮,再确认,即可删除
function deleteEmp(){
$(document).on("click",".delete_btn",function (){
var empName = $(this).parents("tr").find("td:eq(2)").text();
var empId = $(this).attr("d-id");
// alert($(this).parents("tr").find("td:eq(2)").text());
if(confirm("你确定要删除【" +empName+ "】吗?")){
$.ajax({
url:"emp/" + empId,
type:"DELETE",
success:function (result){
alert(result.msg);
//返回当前页面
to_page(currentPage);
}
})
}
})
}
批量删除
批量删除我们首先得做一个全选框和全不选框
function select_all(){
$("#check_all").click(function (){
$(".check_item").prop("checked",$(this).prop("checked"));
})
$(document).on("click",".check_item",function (){
var flag = $(".check_item:checked").length==$(".check_item").length;
$("#check_all").prop("checked",flag);
})
}
接下来发送ajax请求,将需要删除的id传给服务器,这里我们选择组装员工id,以 1-2-3形式来发送给服务器
function deleteEmps(){
$("#deleteEmpBtn").click(function (){
var empNames = "";
var del_idstr = "";
$.each($(".check_item:checked"),function(){
//this
empNames += $(this).parents("tr").find("td:eq(2)").text()+",";
//组装员工id字符串
del_idstr += $(this).parents("tr").find("td:eq(1)").text()+"-";
});
empNames = empNames.substring(0,empNames.length-1);
del_idstr = del_idstr.substring(0,del_idstr.length-1);
if(confirm("你确定要删除【"+empNames+"】吗?")){
$.ajax({
url:"emp/"+del_idstr,
type:"DELETE",
success:function (result){
alert(result.msg);
//返回页面
to_page(currentPage);
}
})
}
})
}
控制器代码
不论是单个删除还是批量删除,我们都使用同一个控制器接收,之前对id形式封装,到服务器可以分辨出批量删除请求和单个删除请求
@RequestMapping(value = "/emp/{ids}",method = RequestMethod.DELETE)
@ResponseBody
public Msg deleteEmp(@PathVariable String ids){
if(ids.contains("-")){
//批量删除处理
List<Integer> del_ids = new ArrayList<>();
String[] str_ids = ids.split("-");
//组装id的集合
for (String string : str_ids) {
del_ids.add(Integer.parseInt(string));
}
employeeSerivce.deleteBatch(del_ids);
}else {
//单个删除
Integer id = Integer.valueOf(ids);
employeeSerivce.deleteEmp(id);
}
return Msg.success();
}