那年没学懂的(java web)批量删除

Javaweb 教师管理批量删除教师信息功能 多选复选框多个删除,点击全选全部选中,再次点击全部取消,为了保证操作的安全,应该提示框进行提升,用户再次点击确认删除进行删除,把选中的多个复选框的值传到后端进行循环删除,最后刷新数据。第三步:在servlet中获取ids,调用底层service实现删除功能,这里你也可以加一下判断和处理。第二步:写form表单,因为我们要通过表单提交来完成删除,注意form表单的范围及它要访问的路径。取到数据的id,放到上面,并命名为ids,你也可以把它的id放到这个复选框的后面,方便查看。第五步:dao层的实现。 阅读详情

那年没学懂的(java web)批量删除

下面进入正题,我们来以12306的这个管理员页面为例,
第一步:
第一步:一般我们需要通过id来删除信息,所以就通过EL表达式取到数据的id,放到上面,并命名为ids,你也可以把它的id放到这个复选框的后面,方便查看。
在这里插入图片描述
第二步:写form表单,因为我们要通过表单提交来完成删除,注意form表单的范围及它要访问的路径。
在这里插入图片描述
第三步:在servlet中获取ids,调用底层service实现删除功能,这里你也可以加一下判断和处理。
在这里插入图片描述
第四步:关于写删除的几种方法,我们在这里使用的是deleteUserBatch,Batch是一个批量处理数据的方法。
在这里插入图片描述
第五步:dao层的实现,创建一个关于userdao的接口,通过接口来实现。下面的是核心代码。


	@Override
	public boolean deleteUsersBatch(int[] ids) {
		try {
			//1.获取数据库连接
			//conn = DBUtil.getConnection();
			
			//2.获取PreparedStatement对象
			stat = conn.prepareStatement("delete from tab_user where id=?");
			
			//3.绑定变量值----遍历绑定多个id
			for (int id : ids) {
				stat.setInt(1, id);
				
				//-----------addBatch()--------------------1. 添加批处理语句
				stat.addBatch();//delete from tab_user where id=1
							    //delete from tab_user where id=2
								//delete from tab_user where id=3
			}
			
			//4.执行更新--------------executeBatch()-----------------2.执行批处理语句
			int[] results = stat.executeBatch();
			
			//5.处理结果  ① 执行成功 : a) 大于等于 0 的数 ,  b)返回SUCCESS_NO_INFO  ② 执行失败:返回 EXECUTE_FAILED 
			for (int result : results) {
				// ② 执行失败:返回 EXECUTE_FAILED 
				if(result == Statement.EXECUTE_FAILED)
				{
					return false;
				}
			}
			
			return true;
			
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			//6.关闭资源
			DBUtil.close(stat, rs);
		}
		return false;
	}

第六步:service层,创建一个关于userservice的接口,方便调用与后期处理,接口的好处我就不说了。这里用了事务管理。

@Override
	public boolean deleteUsersBatch(int[] ids) {
		Connection conn = null;
		try{
			conn = DBUtil.getConnection();
			DBUtil.beginTransaction(conn);       //1.关闭自动提交功能----------------------
			
			//--------------------代码核心区域     ------   start----------------------------------
			//① 删除用户信息
			IUserDao userDao = new UserDaoImpl(conn);
			boolean result = userDao.deleteUsersBatch(ids);
			System.out.println("用户[" + Arrays.toString(ids) + "]删除结果:" + result);
			
			if(result)
			{
				DBUtil.commitTransaction(conn);  //2.如果操作成功,提交事务-------------------
				System.out.println("操作成功,提交事务------------------------------");
				return true;
			}
			else
			{
				DBUtil.rollbackTransaction(conn);//3.1 如果操作失败,回滚事务------------------
				System.out.println("操作失败,提交事务------------------------------");
			}
		}
		catch(Exception e)
		{
			DBUtil.rollbackTransaction(conn);   //3.2 如果操作发生异常,回滚事务-----------------
			System.out.println("操作发生异常,提交事务------------------------------");
		} finally {
			//4.关闭连接
			DBUtil.close(conn);
		}
		
		return false;
	}
SSM框架实现批量删除 前言:最近做项目遇到批量删除,头都炸了,不知道怎么做,去求助大神,借助人家的代码实现,也没能解决,加班到一点才舍得睡觉,在那之前还是不理解这个批量删除怎么搞,过了一夜自己才想通,终于实现了批量删除,代码如下: 实现的效果图:不想截这么多图了 ,大家大概想象一下、、、、、、嘿嘿 第一张图是选中行,然后点击批量删除,也可以全选删除,如图: 第二张图是点击批量删除之后,弹出确认是否删除确认框,... 阅读详情

相关推荐

使用java代码实现mongodb批量删除数据

使用java代码实现mongodb批量删除数据 最近在写一个web后台,要求删除数据mongodb里面的数据 首先,对前台传来的参数进行处理,批量删除前台传入的参数形式应该是数组类型的json数据。 { "content": [ "5912e7ae2d725d1d7c72b04a", "5912e7aa2d725d1d7c72b049" ] } 把json转成String数组 ArrayList<User> ids= null; JSONAr

weixin_43761767的博客 2496

Java后端实现批量删除

本文主要介绍java后端如何实现数据的批量删除。

m0_64005381的博客 4449

【java web】springMVC框架实现用多选框批量删除表数据功能

本功能是基于springMVC+mybatis框架实现的,实现过程如下: jsp代码: <input type="checkbox" id="subcheck" name="subcheck" value="${movie.id}" /> ${status.count }

m0_37459696的博客 1万+

Java多选进行批量删除功能

批量删除可以减少数据库的负担,因为在一次连接数据库的过程中,可以同时删除多条数据,而不需要多次连接数据库。通过一个循环来遍历要删除的用户信息的ID数组,然后依次调用单个删除信息的方法来删除每一个用户信息。2.对教师id和删除状态进行封装并对两个方法进行处理。1.连接数据库,使用删除语句实现信息删除方法。4.在Servlet中调用业务处理。3.对前台网页进行处理。

2202_75384458的博客 3399

十六、删除和批量删除

功能一:在列表中删除某一条数据 在WEB-INF/jsp/user/index.jsp页面中, $.each(users, function(i, user){//循环集合 tableContent += '<tr>'; tableContent += ' <td>'+(i+1)+'</td>'; tableContent += ' <td...

荒的博客 941

Java中批量删除与模糊查询的技术实现与应用

在数据量庞大的应用系统中,数据的增删改查操作是基本且频繁的数据库交互行为。对于删除操作而言,批量删除能够显著减少对数据库的请求次数,提高操作效率,尤其在处理大量数据时,其性能优势更为明显。本章节将介绍Java中批量删除的概念,并通过不同的实现方式,帮助开发者掌握批量删除的精髓,并对后续章节中的代码实现提供理论基础。批量删除指的是在数据库层面一次性删除多条记录,与逐条删除单个记录相比,可以减少网络开销,避免重复的数据库连接、认证过程和事务提交,从而提高整体的处理效率。

weixin_42524864的博客 879

Java实现多选批量删除,含前后端相关代码

本文介绍如何使用Java实现多选批量删除

见证自己学习,成长的记录 1万+

java批量删除

界面批量删除

Java+Spring框架实现批量删除操作

效果展示图: 代码部分: JSP客户端页面部分: 这里用from表单来接收提交的数据传到controller层来进行批量删除操作,用来显示勾选选项,其中的name属性参数都用同一个,然后再控制层接收的时候回自动封装成一个代表id集合的数组,具体代码如下: &lt;form action="delall" method="post"&gt; &lt;p&gt;&lt;a href="/S...

大房子爱生活的博客 1万+

Node框架之NestJS入门学习

文章主要分为三部分:1 NestJS 与Egg对比2 NestJS 基础知识介绍3 使用NestJS快速搭建应用,实现CURD操作e-link文档Egg官网NestJS 官网NestJS中文文档(非官方)

十九万里的博客 4742

基于 MATLAB 的综合能源系统建模:全面解析与案例应用 

本文详细介绍了基于 MATLAB 的综合能源系统建模相关知识,包括 MATLAB 在综合能源建模中的优势、综合能源系统各组件和网络的建模方法,并通过园区综合能源系统的案例展示了从建模到优化调度求解以及结果分析的全过程。在当今全球能源格局深刻变革的背景下,综合能源系统(Integrated Energy System,IES)作为一种创新的能源供应体系,整合了多种能源形式,如电力、热力、燃气等,以实现能源的高效生产、传输、分配和利用。需要考虑燃气的压力、流量特性以及管道的阻力特性等。

qq_57128262的博客 1337

SSM SpringMVC 批量删除

修改itemsList.jsp  page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>  taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>  taglib uri="http://jav

newbie_God的博客 1878

非球面检测

摘要:非球面镜检测主要采用干涉法,包括零位补偿和非零位补偿两种方式。零位补偿通过透镜组完全校正像差,精度达1%波长,但设计复杂成本高;非零位补偿利用部分像差补偿降低波前斜率,适用于规则非球面。折射-衍射混合补偿镜能同时校正多种像差。实际检测中可采用物理补偿镜或动态CGH加载方案,光路设计需运用坐标断点和多重结构技术实现复杂光路建模。不同方法各具优势,需根据检测需求选择合适方案。

Zhaxibamao的博客 2113

如何实现批量删除商品

1.product-view.jsp  添加产品  批量删除 2.脚本 /*批量删除*/ function removes(){ layer.confirm('确认删除所选产品?',function(index){ $.ajax({ 'url' : '/web10-7/product/removes', 'type' : 'p

wumingxuan1的博客 3093

Gelsight Sensor 重建 height-map —— 使用 DST-II 算子的快速泊松求解

Gelsight Sensor 重建 height-map —— 使用 DST-II 算子的快速泊松求解 gelsight gelsight传感器具有软弹性体的接触表面,可以精确的重建物体形状还可以从传感器的变形推断接触力和滑动. 使用 DST-II 算子的快速泊松求解 height 文章:GelSight: High-Resolution Robot Tactile Sensors for Estimating Geometry and Force 文章最后求解的方程其实是: p=∂2u∂x2+∂

qq_42236622的博客 1243

Java MyBatis 删除 使用 foreach传递 List批量删除 亲测

Java MyBatis 删除 使用 foreach传递 List批量删除1. 相关数据表2. User.java3. UserMapper.xml4. DAO(Data Access Object)数据访问接口 UserDao.java和实现类 UserDaoImpl.java5. UserController.java(入口) 1. 相关数据表 CREATE DATABASE `test` ...

Shawn Jeon`s blog 2251

如何在 UniApp 中接入讯飞语音听写功能 文末附vue3+vue2完整代码

在开发过程中,我遇到了讯飞接口返回空数据的问题。通过仔细检查传送的每一帧数据,我发现问题出在第一帧的配置信息以及 Base64 数据的切片。确保每一帧的数据正确且符合接口要求,问题就能够得到解决。希望这个过程能帮助你在项目中顺利对接讯飞语音识别。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 999

基于SSM,ajax的web应用批量删除功能开发笔记

目录开发环境开发前提开发步骤 开发环境 IDEA2018.2.2 tomcat7.0.94 JDK1.8 MySQL5.5.58 Maven3.6.0 开发前提 已有所需工程项目及前端页面文件、配置文件等 开发步骤 1.在user-list.jsp文件的<head>标签对里加入如下代码: <script type="text/javascript" src="${pageCo...

m0_37342832的博客 297

OSCP-Challenge 2 - Relia

使用andrea:PasswordPassword_6登录远程桌面,在c盘根目录下发现一个计划任务的ps,文件,修改执行的exe位木马,获取到milana用户的反弹shell。,发现开放了一个8000端口,但是我们外部是访问不到的,它对应的页面是/var/www/internal/,这个目录下的文件我们是可以访问的,把这个文件打个包放到本地分析下。其中数据的可以直接连接mssql,但是端口是49965,不过在数据库中没发现什么可用的信息,但是可以修改密码直接进后台,这个可以先放放。

羽的博客 7776

063、推挽变换器的磁偏问题与解决

本文针对推挽变换器中的磁偏问题展开分析。作者通过实际案例指出,磁偏主要由开关管导通压降差异和驱动信号不对称引起,会导致变压器饱和、MOS管炸毁等问题。文章提供了四种解决方案:采用电流模式控制、添加隔直电容、优化对称驱动设计以及引入磁芯气隙(作为最后手段)。调试时应重点观察原边电流波形对称性、变压器声音和直流分量。作者强调实践经验的重要性,建议预留隔直电容位置,并指出推挽拓扑在500W以上功率场合的局限性。这些基于实战的经验总结为电源工程师提供了有价值的参考。

Jack010169的博客 312

springboot编写批量删除

springboot编写逻辑删除 1.创建数据库 create table student ( id int auto_increment primary key, name varchar(12) null, classes varchar(12) null, score int null, isdelete int default 1 null ); 2.编写studentmapper.xm

weixin_44389577的博客 3198

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

datagrid之新增删除以及批量删除

一、新增(结合上节) 思路: ①添加一个新增按钮 ②添加事件弹出窗口 ③提交表单 ④关闭窗体,刷新数据表格 解决: ①新增按钮 <a id="btn-add" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-search'">新增</a> ②绑定事件 //新增点击事件 $('#btn-add').click(function() { //清空...

qq_54936371的博客 733

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

实现批量删除

PageInfo.java import java.util.List; public class PageInfo<T> { private List<T> list; private int totalPage; private int size; private int totalCount; private int currentPage; public List<T> getList() { r

Ning_333的博客 556

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

JAVAWeb列表数据批量删除思路及实现

带复选框 checkbox 的列表要实现批量删除的功能,首先要获取被选中的信息的全部 id,可以把该列表放入一个 form 表单中,以获取表单信息的方式获取全部 id,然后遍历 id,循环删除所有信息。 列表形式: 获取列表选中信息 id 把 table 放入 form表单,并把复选框 checkbox 的 value 值设置为 id: <form id="form1" action="$...

William_GJIN的博客 5457
上一篇: java web 分页基础
下一篇: 关于我们平时出现404背后的秘密(web 容器错误处理)
噢!不杰克
博客等级 码龄7年 4443粉丝 142原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值