SSH注解框架实现批量删除功能

版权声明:有问题可联系博主QQ:15577969,大家一起相互交流和学习。 https://blog.csdn.net/qq15577969/article/details/82712820

一、UserDao.java

	/**
	 * 批量删除用户
	 * @param ids 用户Id数组
	 * @return
	 */
	boolean delUserForBatch(Integer[] ids);

二、UserDaoImpl.java

	@Override
	public boolean delUserForBatch(Integer[] ids) {
		// TODO Auto-generated method stub
		String sql = "delete from User where id in (:ids)"; 
		Query query = sessionFactory.getCurrentSession().createSQLQuery(sql);
		query.setParameterList("ids", ids);
		int jieguo= query.executeUpdate();
		if (jieguo>0) {
			return true;
		}else {
			return false;
		}
		
	}

三、UserBiz.java

	/**
	 * 批量删除用户
	 * @param ids 用户Id数组
	 * @return
	 */
	boolean delUserForBbatch(Integer[] ids);

四、UserBizImpl.java

	@Override
	public boolean delUserForBatch(Integer[] ids) {
		// TODO Auto-generated method stub
		return userDao.delUserForBatch(ids);
	}

五、UserAction.java

	//接收用户集合的数组 
	private Integer[] ids;
	public Integer[] getIds() {
		return ids;
	}
	public void setIds(Integer[] ids) {
		this.ids = ids;
	}
	//批量删除用户方法(前端调用)
	@Action(value = "delUserForBatch", results = { @Result(name = "success", type = "json") })
	public String delUserForBatch() {
		String result = "no";
		boolean flag = userBiz.delUserForBatch(ids);
		if (flag) {
			result = "ok";
		} else {
			result = "no";
		}
		//转换为json
		convertToJson(result);
		return SUCCESS;
	}
	
	public static void  convertToJson(String str) {
		try {
			HttpServletResponse response = ServletActionContext.getResponse();
			response.setCharacterEncoding("utf-8");
			response.setContentType("text/html; charset=UTF-8");			
			PrintWriter writer =  response.getWriter();
			writer.write(str);
			writer.flush();
			writer.close();

		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

六、Jsp页面

<table>
	<tr>
		<th><input id="all" type="checkbox" /></th>
		<th>标准号</th>
		<th>中文名称</th>
		<th>版本</th>
		<th>发布日期</th>
		<th>实施日期</th>
		<th>操作</th>
	</tr>
	<c:forEach items="${stdList }" var="std">
		<tr>
			<td><input name="id" type="checkbox" value="${std.id }" /></td>
			<td>${std.std_num }</td>
			<td>${std.zhname }</td>
			<td>${std.version }</td>
			<td>
				<fmt:formatDate value="${std.release_date }" pattern="YYYY-MM-dd" />
			</td>
			<td>
				<fmt:formatDate value="${std.impl_date }" pattern="YYYY-MM-dd" />
			</td>
			<td>
				<a href="${std.package_path }" target="_blank">下载</a>&nbsp;&nbsp;
				<a href="edit.html?id=${std.id }">修改</a>
			</td>
		</tr>
	</c:forEach>
</table>
<button id="del">批量删除</button>
<script type="text/javascript" src="statics/js/jquery-1.12.4.js"></script>
<script type="text/javascript">
	//全选
	var oall = document.getElementById("all");
	var oid = document.getElementsByName("id");
	oall.onclick = function() {
		for(var i = 0; i < oid.length; i++) {
			//所有的选择框和全选一致
			oid[i].checked = oall.checked;
		}
	};
	//点击复选框
	for(var i = 0; i < oid.length; i++) {
		oid[i].onclick = function() {
			//判断是否全部选中,遍历集合
			for(var j = 0; j < oid.length; j++) {
				if(oid[j].checked == false) {
					oall.checked = false;
					break;
				} else {
					oall.checked = true;
				}
			}
		};
	}
	//点击批量删除
	$("#del").click(function() {
		var ids = []; // 定义一个用户Id数组
		$("[name='id']:checked").each(function() {
			ids.push(this.value);
		});
		if(ids.length == 0) {
			alert("请至少选择一项要删除的数据");
			return;
		}

		var json = {
			"ids": ids
		};

		$.get("delUserForBatch.html", json, function(data) {
			if(data == "ok") {
				alert("删除成功!");
				//删除成功后,在这里执行刷新
			} else {
				alert("删除失败!");
			}
		});
	});
</script>

猜你喜欢

转载自blog.csdn.net/qq15577969/article/details/82712820