记录批量删除

查询并显示数据库的记录,实现批量选择与删除

  1 <%@page import="com.sp.web.Student"%>
  2 <%@page import="java.util.List"%>
  3 <%@ page language="java" contentType="text/html; charset=UTF-8"
  4     pageEncoding="UTF-8"%>
  5     <%@ taglib prefix="s" uri="/struts-tags" %>
  6 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  7 <html>
  8 <head>
  9 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 10 <title>查询显示页面</title>
 11 </head>
 12 <body>
 13 <s:include value="toubu.jsp"></s:include>
 14 <table width="900" border="1" cellpadding="0" cellspacing="0" align="center" bgcolor="#feeeed">
 15         <tr align="right"><td height="60" colspan="8"><s:a action="Student-back">返回首页</s:a></td></tr>
 16         <tr style="font-size: 36px" align="center"><td height="40" colspan="8">学生信息表</td></tr>
 17         <tr align="center">
 18             <td width="120">选择<br>全选<input type="radio" name="check" onclick="checkall(this)">
 19                     反选<input type="radio" name="check" onclick="checkno(this)"></td>
 20             <td width="120">学号</td>
 21             <td width="120">姓名</td>
 22             <td width="120">性别</td>
 23             <td width="120">出生日期</td>
 24             <td width="120">班级</td>
 25             <td width="50">修改</td>
 26             <td>删除</td>
 27         </tr>
 28 <s:iterator value="#session.list" status="sta">
 29      <tr align="center">
 30          <td><input type="checkbox" name="checkbox" value="${ sno }" onclick="setcheck(this)"></td>
 31         <td><s:property value="sno"/></td>
 32         <td><s:property value="sname" /></td>
 33         <td><s:property value="ssex" /></td>
 34         <td><s:date name="sbirthday"  format="yyyy-MM-dd"/></td>
 35         <td><s:property value="class_" /></td>
 36         <td>
 37         <s:a action="Student-update" onclick="return confirm(‘确认要进行修改么?‘)">
 38             <s:param name="sno" value="sno"></s:param>
 39             <img alt="edit" src="D:\123\Java\workspace\test222\WebContent\WEB-INF\image\edit.jpg"></s:a>
 40         </td>
 41         <td><a href=‘Student-delete.action?sno=<s:property value="sno"/>‘ onclick="return confirm(‘删除后的数据不可恢复,请慎重选择!\n确定要删除吗?‘)">【删除】</a></td></tr>
 42 </s:iterator>
 43         <tr align="right">
 44             <td height="30" colspan="8">查到记录:${list.size() } 条</td></tr>
 45             <s:submit action="Student-deleteAll" type="button" value="全部删除" onclick="del(this)" ></s:submit>
 46      </table>
 47 </body>
 48 </html>
 49 <script type="text/javascript">
 50 var ckd = document.getElementsByName("checkbox");
 51 function checkall(ckdall) {
 52     if (ckdall.checked) {
 53         for (var i = 0; i < ckd.length; i++) {
 54         ckd[i].setAttribute("checked","checked");
 55         }
 56     } else {
 57         for (var i = 0; i < ckd.length; i++) {
 58             ckd[i].checked = false;
 59         }
 60
 61     }
 62
 63
 64 }
 65 function checkno(ckdno) {
 66     for (var i = 0; i < ckd.length; i++) {
 67         if (ckd[i].checked) {
 68             ckd[i].checked = false;
 69         } else {
 70             ckd[i].setAttribute("checked","checked");
 71         }
 72
 73     }
 74 }
 75 function setcheck(checkbox) {
 76     if (checkbox.checked) {
 77         checkbox.setAttribute("checked","checked");
 78     } else {
 79         checkbox.checked = false;
 80     }
 81
 82 }
 83 function del(btn) {
 84
 85     var count = 0;
 86     var value = "";
 87     for (var i = 0; i < ckd.length; i++) {
 88         if(ckd[i].checked) {
 89             count += 1;
 90             value += ckd[i].value + ",";
 91         }
 92     }
 93     if (count == 0) {
 94         alert("请至少选择一条数据!");
 95     } else {
 96     value = value.substring(0,value.lastIndexOf(","));
 97     if (confirm("删除后的数据不可恢复,请慎重选择!\n确定要删除吗?")) {
 98         window.location.href = "Student-deleteAll.action?snos=" + value;
 99     }
100     }
101 }
102
103 </script>

               

Action方法:

 1 public String deleteAll() {
 2         String rtn = "";
 3         HttpServletRequest hsq = ServletActionContext.getRequest();
 4         String value = hsq.getParameter("snos");
 5         String[] snos = value.split(",");
 6         int i = new StudentDao().deleteall(snos);
 7         if (i >= 0) {
 8             rtn = "stu-deleteall";
 9         } else {
10             rtn = "fail";
11         }
12         return rtn;
13     }

DAO层:

 1 public int deleteall(String[] snos) {
 2         int rtn = 0;
 3         Student stu;
 4         Configuration cfg = new Configuration().configure();
 5         ServiceRegistry sr = new StandardServiceRegistryBuilder().applySettings(cfg.getProperties()).build();
 6         SessionFactory sf = cfg.buildSessionFactory(sr);
 7         Session se = sf.openSession();
 8         Transaction tr = se.beginTransaction();
 9
10         String hql = "delete Student where sno in " + snos ;
11         for (int i = 0; i < snos.length; i++) {
12             stu = (Student)se.get(Student.class, snos[i]);
13             se.delete(stu);
14             rtn++;
15         }
16         tr.commit();
17         se.close();
18         sf.close();
19         return rtn;
20     }
时间: 2024-07-30 13:33:58

记录批量删除的相关文章

SQL存储过程将符合条件的大量记录批量删除脚本

-- ============================================= -- Author: James Fu -- Create date: 2015/10/27 -- Description: v0.1 利用批量的方式删除符合条件的数据 -- ============================================= CREATE PROCEDURE [dbo].[sp_LargeDelete] @TableName sysname, @MaxRow

iOS开发:一个高仿美团的团购ipad客户端的设计和实现(功能:根据拼音进行检索并展示数据,离线缓存团购数据,浏览记录与收藏记录的批量删除等)

大致花了一个月时间,利用各种空闲时间,将这个客户端实现了,在这里主要是想记录下,设计的大体思路以及实现过程中遇到的坑...... 这个项目的github地址:https://github.com/wzpziyi1/GroupPurchase 主要实现的功能,用UICollectionViewController展示团购数据,根据拼音进行检索并展示数据,离线缓存团购数据,浏览记录与收藏记录的批量删除,友盟分享的集成,利用UIView+AutoLayout写布局,实现地图定位.自定义大头针等 整个项

批量删除本地指定扩展名文件工具

VC工具在编译时,会生成大量临时文件,占用很多空间,项目多了,手动删除就会很费力,所以我做了个小工具,可以批量删除指定目录,指定扩展名的文件. 此工具根据配置文件指定的扩展名删除文件,一般我删除VC的扩展名为:.ipch.pdb.pch.sdf.tlog.obj.idb.ilk.res.根据需要,自行配置. 下载地址:http://download.csdn.net/detail/yxstars/8201833 下面是一些vc扩展名的含义: .APS:存放二进制资源的中间文件,VC把当前资源文件

使用easyui实现列表的批量删除

使用easyui实现列表的批量删除 首先要做的就是添加一个多选框 <table id="otGrid" nowrap="false" style="height: 330px;"> <thead> <tr> <th data-options="checkbox:true"></th> //就是这个,多选框 在列表的配置选项中 添加一个 singleSelect:fal

删除JS前台校验,后台批量删除

1.功能需求 在一个数据表格中,选中欲删除的记录,点击删除按钮,先触发前台验证,然后调用后台处理逻辑 2.代码实现 HTML代码: <asp:Repeater ID="repInputList" runat="server" DataSourceID="InputsDataSource" EnableViewState="true" > <HeaderTemplate> <table cellpa

网上图书商城项目学习笔记-015删除和批量删除购物车条目

一.流程分析 二.代码 1.view层 (1)list.jsp 1 <a href="<c:url value='/CartItemServlet?method=batchDelete&cartItemIds=${item.cartItemId }'/>">删除</a> 2 3 <a href="javascript:batchDelete();">批量删除</a> 4 /* 5 * 批量删除 6

Linux下使用awk批量删除共享内存

1.awk简介 awk 是一个强大的文本分析工具.sed 常常用于一整个行的处理,而 awk 则倾向于以空格和tab键为默认分隔符将每行切片成一个个域(也就是一列)来处理.awk适用于小型的数据处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 awk 的 GNU 版本. 2. awk语法格式 awk 'pattern1{action1} pattern2{action2} -' filename awk 后面接两个单引号并加上大括号 {} 来

bos 第3天(easyui弹窗边界问题、取派员的添加、修改和批量删除)

BOS项目笔记 第3天 今天内容安排: 1.解决window窗口bug 2.bos项目整体需求分析(基础设置.取派.中转.路由.报表) 3.取派员添加功能 4.jQuery easyUI控件datagrid使用方式 5.基于datagrid实现取派员分页查询 6.取派员批量删除和修改 1. 修复window控件bug 将上面的js文件引入jsp页面中 2. 基础设置部分需求分析 整个基础设置部分对应需求文档2.6章节. 2.1 基础档案设置 在其他的系统中通常称为"数据字典".提供基础

hibernate批量删除和更新数据

转载自:http://blog.csdn.net/yuhua3272004/article/details/2909538 Hibernate3.0 採用新的基于ANTLR的HQL/SQL查询翻译器,在Hibernate的配置文件里,hibernate.query.factory_class属性用来选择查询翻译器. (1)选择Hibernate3.0的查询翻译器: hibernate.query.factory_class= org.hibernate.hql.ast.ASTQueryTrans