struts2批量删除

2019独角兽企业重金招聘Python工程师标准>>> hot3.png


2012-10-27 12:48  997人阅读  评论(0)  收藏  举报

逻辑代码

[java]  view plain copy
  1. package com.stu2;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.List;  
  5. import java.sql.*;  
  6.   
  7. import com.stu.Conn;  
  8. import com.stu.DBclose;  
  9. public class Stubean {  
  10.     private Connection ct=null;  
  11.     private PreparedStatement ps=null;  
  12.     private ResultSet rs=null;  
  13.     private Statement st=null;  
  14. public List all(){  
  15.     List list=new ArrayList();  
  16.     try{  
  17.         ct=Conn.getinstance();  
  18.         ps=ct.prepareStatement("select * from Stu ");  
  19.         rs=ps.executeQuery();  
  20.     Stu s=null;  
  21.         while(rs.next()){  
  22.             s=new Stu();  
  23.             s.setId(rs.getInt(1));  
  24.             s.setSname(rs.getString(2));  
  25.             s.setClasses(rs.getString(3));  
  26.             list.add(s);  
  27.         }  
  28.     }catch(Exception e){  
  29.         e.printStackTrace();  
  30.     }finally{  
  31.         DBclose.close(ct, ps, rs);  
  32.     }  
  33.     return list;  
  34.       
  35. }  
  36. public void delete(String id){  
  37.     try{  
  38.         ct=Conn.getinstance();  
  39.         st=ct.createStatement();  
  40.           
  41.         st.addBatch("delete  from Stu where id="+id+"");  
  42.         st.executeBatch();  
  43.     }catch(Exception e){  
  44.         e.printStackTrace();  
  45.     }finally{  
  46.         DBclose.close(ct, ps);  
  47.     }  
  48. }  
  49. }  

Action类
[java]  view plain copy
  1. package com.stu2;  
  2.   
  3. import java.util.List;  
  4.   
  5. import javax.servlet.http.HttpServletRequest;  
  6.   
  7. import org.apache.struts2.ServletActionContext;  
  8.   
  9. import com.opensymphony.xwork2.ActionSupport;  
  10.   
  11. public class StuAction extends ActionSupport{  
  12. private List list;  
  13.     public List getList() {  
  14.     return list;  
  15. }  
  16. public void setList(List list) {  
  17.     this.list = list;  
  18. }  
  19.     @Override  
  20.     public String execute() throws Exception {  
  21.         Stubean sb=new Stubean();  
  22.     list=sb.all();  
  23.         return SUCCESS;  
  24.     }  
  25.     public String remove(){  
  26.         Stubean sb=new Stubean();  
  27.       
  28.         HttpServletRequest q=ServletActionContext.getRequest();  
  29.     String id[]=q.getParameterValues("choice");  
  30.     for(int i=0;i<id.length;i++){  
  31.         sb.delete(id[i]);  
  32.     }  
  33.     list=sb.all();  
  34.       
  35.       
  36.     return SUCCESS;  
  37.     }  
  38.   
  39. }  

删除页面
[html]  view plain copy
  1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>  
  2. <%@ taglib prefix="s" uri="/struts-tags"%>  
  3. <%  
  4. String path = request.getContextPath();  
  5. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  6. %>  
  7.   
  8. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  9. <html>  
  10.   <head>  
  11.    <style type="text/css">    
  12.      table{ border:0;border-collapse:collapse;}    
  13.      td{ font:normal 12px/17px Arial;padding:2px;width:100px;}    
  14.      th{ font:bold 12px/17px Arial;text-align:left;padding:4px;border-bottom:1px solid #333;}    
  15.      .even{ background:#FFF38F;}  /* 偶数行样式*/    
  16.      .odd{ background:#FFFFEE;}  /* 奇数行样式*/    
  17.      .selected{ background:#FF6500;color:#fff;}    
  18.      </style>    
  19.   <script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>  
  20.   <script type="text/javascript">  
  21.    //插件编写    
  22.      (function ($) {    
  23.          $.fn.extend({    
  24.              "alterBgColor": function (options) {    
  25.                  //设置默认值    
  26.                  options = $.extend({    
  27.                      odd: "odd", /* 偶数行样式*/    
  28.                      even: "even", /* 奇数行样式*/    
  29.                      selected: "selected" /* 选中行样式*/    
  30.                  }, options);    
  31.                  $("tbody>tr:odd", this).addClass(options.odd);    
  32.                  $("tbody>tr:even", this).addClass(options.even);    
  33.                  $('tbody>tr', this).click(function () {    
  34.                      //判断当前是否选中    
  35.                      var hasSelected = $(this).hasClass(options.selected);    
  36.                      //如果选中,则移出selected类,否则就加上selected类    
  37.                      $(this)[hasSelected ? "removeClass" : "addClass"](options.selected)    
  38.                      //查找内部的checkbox,设置对应的属性。    
  39.           .find(':checkbox').attr('checked', !hasSelected);    
  40.                  });    
  41.         
  42.         
  43.                  //表头中的checkbox (全选 反选)    
  44.                  $("thead>tr th:first :checkbox:first ").click(function () {    
  45.                      //判断当前是否选中    
  46.                      var hasSelected = $(this).attr("checked");    
  47.                      //如果选中,则移出selected类,否则就加上selected类    
  48.                      $('tbody>tr')[!hasSelected ? "removeClass" : "addClass"](options.selected);    
  49.                      if (hasSelected)    
  50.                          $('tbody>tr :checkbox').attr("checked",true);    
  51.                      else    
  52.                         $('tbody>tr :checkbox').attr("checked",false);    
  53.                  });    
  54.                  // 如果单选框默认情况下是选择的,则高色.    
  55.                  $('tbody>tr:has(:checked)', this).addClass(options.selected);    
  56.                  return this;  //返回this,使方法可链。    
  57.              }    
  58.          });    
  59.      })(jQuery);    
  60.         
  61.      //插件应用    
  62.      $(function(){    
  63.      $("#remove").click(function(){  
  64.       
  65.   
  66. if($(":checkbox[name=choice]:checked").size()==0){  
  67. alert("请选择一行");  
  68. return false;  
  69. }  
  70.      });  
  71.       $("#table2")    
  72.         .alterBgColor()  //应用插件    
  73.         .find("th").css("color","red");//可以链式操作    
  74.      });    
  75.         
  76.   </script>  
  77.     <base href="<%=basePath%>">  
  78.       
  79.     <title>My JSP 'All.jsp' starting page</title>  
  80.       
  81.     <meta http-equiv="pragma" content="no-cache">  
  82.     <meta http-equiv="cache-control" content="no-cache">  
  83.     <meta http-equiv="expires" content="0">      
  84.     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">  
  85.     <meta http-equiv="description" content="This is my page">  
  86.     <!-- 
  87.     <link rel="stylesheet" type="text/css" href="styles.css"> 
  88.     -->  
  89.   
  90.   </head>  
  91.     
  92.   <body>  
  93.   <form action="delete.action" method="post">  
  94.    <table id="table2">   
  95.    <tr><input type="submit" value="删除"  id="remove"/></tr>   
  96.      <thead><tr><th><input type="checkbox"/></th><th>编号</th><th>姓名</th><th>班级</th></tr></thead>    
  97.      <tbody>   
  98.      <s:iterator value="list">  
  99.       <tr>    
  100.        <td><input type="checkbox" name="choice" value="<s:property value='id'/>"/></td>    
  101.        <td><s:property value="id"/></td>    
  102.        <td><s:property value="sname"/></td>    
  103.        <td><s:property value="classes"/></td>    
  104.       </tr>    
  105.       </s:iterator>  
  106.       </tbody>  
  107.       </table>  
  108.       <input type="hidden" value="<s:property value='id'/>" />  
  109.       </form>  
  110.       <s:debug></s:debug>  
  111.   </body>  
  112. </html>  

转载于:https://my.oschina.net/heiyexue/blog/323057

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/290629.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用jquery刷新当前页面

如何使用jquery刷新当前页面 下面介绍全页面刷新方法&#xff1a;有时候可能会用到 window.location.reload()刷新当前页面. parent.location.reload()刷新父亲对象&#xff08;用于框架&#xff09; opener.location.reload()刷新父窗口对象&#xff08;用于单开窗口&#xff…

电子商务应用课程知识整理 第六章-数据挖掘

文章目录一、概述二、关联分析概念&#xff1a;关联分析步骤&#xff1a;用于寻找频繁项集的算法算法一&#xff1a;蛮力法算法二&#xff1a;Apriopri算法&#xff08;先验算法&#xff09;三、分类与预测k近邻算法&#xff08;kNN&#xff09;四、聚类分析k均值算法&#xff…

C语言之如何输出uint32_t和uint64_t和16进制

1、输出uint32_t uint32_t a 888;printf("a is %ld", a); 2、输出uint64_t uint64_t b 888;printf("b is %lu", b);printf("b is %lld", b); 3、输出16进制 int c 16;printf("c is 0x%08x", c);

《统计会犯错——如何避免数据分析中的统计陷阱》—第2章置信区间的优势

本节书摘来自异步社区《统计会犯错——如何避免数据分析中的统计陷阱》一书中的第2章置信区间的优势&#xff0c;作者【美】Alex Reinhart&#xff08;亚历克斯莱因哈特&#xff09;,更多章节内容可以访问云栖社区“异步社区”公众号查看。 置信区间的优势与考虑试验结果的显著…

.NET Core 返回结果统一封装

本文使用.NET Core Webapi演示&#xff01;一:新建.NetCore webapi项目为了方便开发,简化代码,也为了与前端方便对接,需要对接口服务返回结果进行统一处理。二:定义返回结果结构我们需要定义一个统一返回结果泛型类ApiResultpublic class ApiResult<T>{/// <summary&g…

第40周一

晚上地铁回来的路上&#xff0c;回顾总结下今天&#xff0c;有点莫名的忧伤&#xff0c;感觉现在同事间的协作内耗很大&#xff0c;为什么一个简单的定制&#xff0c;就感觉涉及到多道流程多个不同负责人后就变的很复杂&#xff0c;进而组织的整体效率可想而知。一天大部分时间…

linux之nm命令

1、nm命令介绍 nm命令很好记&#xff0c;当时看到大神在我的电脑面前在open ssl编译的.a文件里面过滤SHA函数&#xff0c;nm你就这样记&#xff0c;nm 尼玛, 哈哈。我们可以通过nm命令查看后缀out文件和后缀a文件里面的函数和部分属性。比如我们过滤SHA函数&#xff0c;命令如下…

matlab练习程序(PCASVD)

clear all;close all;clc;img1imread(Corner.png);img2imread(Corner1.png);img3imread(Corner2.png); img1imresize(img1,[35 90]); %Matlab的svd不支持太大的数据&#xff0c;我把数据变小了.img2imresize(img2,[35 90]);img3imresize(img3,[35 90]); [height width]size(img…

.NET的两种部署模式,了解一下

前言以往部署程序一直是习惯性先安装运行时环境&#xff0c;然后再将发布打包好的程序运行起来&#xff1b;但当多个程序依赖不同版本框架平台时&#xff0c;如果部署在同一台机器上&#xff0c;那就需要在同一台机器上安装多个版本的运行时&#xff0c;总感觉有点不太方便&…

大型数据库课程知识整理

文章目录常见数据库有哪些&#xff1f;SQL和NOSQL区别和优缺点数据库系统可以从那些方面进行优化&#xff1f;1.应用层的优化2.数据库设计与配置优化3.数据库配置优化4.操作系统和硬件优化5.架构优化IOE概念Oracle体系结构物理结构内存结构后台服务进程Oracle扩展 RAC双机热备表…

Linux性能优化2.1 CPU性能统计信息

摘要 性能工具&#xff1a;系统CPU 本章概述了系统级的Linux性能工具。这些工具是你追踪性能问题时的第一道防线。它们能展示整个系统的性能情况和哪些部分表现不好。本章将讨论这些工具可以测量的统计信息&#xff0c;以及如何使用各种工具收集这些统计结果。阅读本章后&#…

Spring + hibernate + JPA 配置

最近对hibernate的JPA实现比较感兴趣&#xff0c;在此记录下配置方法&#xff0c;备查。先上maven依赖包配置&#xff0c;这里使用的是spring3.1.2和hibernate3.6.0<dependencies> <dependency><groupId>org.hibernate</groupId><artifactId…

C语言之sprintf使用总结

1、问题 在open ssl 里面输出16进制的随机数 uint8_t *client NULL;client ssl->s3->client_randomfor (int i 0; i < 32; i){printf("client_random is %02x\n", client[i]);} 但是这样输出都是一个一个的打印&#xff0c;我需要连接在一起的字符串 2…

CSS3弹性伸缩布局(一)——box布局

CSS3弹性伸缩布局简介 2009年&#xff0c;W3C提出了一种崭新的方案----Flex布局&#xff08;即弹性伸缩布局&#xff09;&#xff0c;它可以简便、完整、响应式地实现各种页面布局&#xff0c;包括一直让人很头疼的垂直水平居中也变得很简单地就迎刃而解了。但是这个布局方式还…

Avalonia跨平台入门第十五篇之ListBox聊天窗口

在前面分享的几篇中咱已经玩耍了Popup、ListBox多选、Grid动态分、RadioButton模板、控件的拖放效果、控件的置顶和置底、控件的锁定、自定义Window样式、动画效果、Expander控件、ListBox折叠列表;今天趁着大周末的时间接着去摸索基于ListBox的聊天窗口的效果,最终实现的效果如…

《Unity着色器和屏幕特效开发秘笈(原书第2版)》一2.9 打包和混合纹理

本节书摘来自华章出版社《Unity着色器和屏幕特效开发秘笈&#xff08;原书第2版&#xff09;》一书中的第2章&#xff0c;第2.9节&#xff0c;作者 [英]艾伦朱科尼&#xff08;Alan Zucconi&#xff09; [美]肯尼斯拉默斯&#xff08;Kenneth Lammers&#xff09;&#xff0c;更…

云计算及应用课程知识整理

文章目录一、云计算云计算概念云计算的服务类型云计算技术体系结构的层次及其功能为什么云计算成本低&#xff1f;二、GFS分布式的文件系统设计需要考虑哪些问题&#xff1f;GFS架构GFS容错机制三、分布式数据处理MapReducemapReduce概念MapReduce适合什么类型数据&#xff1f;…

LeetCode之Rotate Array

1、题目 Rotate an array of n elements to the right by k steps. For example, with n 7 and k 3, the array [1,2,3,4,5,6,7] is rotated to [5,6,7,1,2,3,4]. Note: Try to come up as many solutions as you can, there are at least 3 different ways to solve this p…

Android loading进度条使用简单总结

在这里&#xff0c;总结一下loading进度条的使用简单总结一下。 一、说起进度条&#xff0c;必须说说条形进度条&#xff0c;经常都会使用到嘛&#xff0c;特别是下载文件进度等等&#xff0c;还有像腾讯QQ安装进度条一样&#xff0c;有个进度总给人良好的用户体验。 先来找图看…

.NET6之MiniAPI(二十二):HttpClient

说明&#xff1a;本篇不是说明HttpClient怎么使用&#xff0c;而以分享在asp.net core mini api框架下&#xff0c;HttpClient的引入和使用方式。我们在业务开发中&#xff0c;免不了调用三方的服务&#xff0c;这时就会用到HttpClient&#xff0c;在早期的asp.net core框架中&…