zoukankan      html  css  js  c++  java
  • 记录批量删除

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

      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:123Javaworkspace	est222WebContentWEB-INFimageedit.jpg"></s:a>
     40         </td>
     41         <td><a href='Student-delete.action?sno=<s:property value="sno"/>' onclick="return confirm('删除后的数据不可恢复,请慎重选择!
    确定要删除吗?')">【删除】</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("删除后的数据不可恢复,请慎重选择!
    确定要删除吗?")) {
     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     }
  • 相关阅读:
    rails 给类添加属性
    workflow engine Ruote初体验之二(通用属性)
    workflow engine Ruote初体验之一(概念)
    workflow engine Ruote 安装
    文字编码
    C# 制作Windows服务安装包
    Ruby on rails初体验(三)
    18-语言入门-18-鸡兔同笼
    17-语言入门-17-笨小熊
    16-语言入门-16-谁获得了最高奖学金
  • 原文地址:https://www.cnblogs.com/ouyangtangfeng99/p/5724549.html
Copyright © 2011-2022 走看看