首页前端开发其他前端知识ajax实现jsp表格删除数据库数据

ajax实现jsp表格删除数据库数据

时间2023-11-12 19:32:02发布访客分类其他前端知识浏览1007
导读:Ajax是一种用于在网页中进行异步数据交互的技术,能够提高用户体验和页面性能。在JavaWeb开发中,我们常常需要实现对数据库中数据的增删改查操作。本文将通过使用Ajax来实现从JSP页面中删除数据库中的数据,来介绍该技术的应用。假设我们有...

Ajax是一种用于在网页中进行异步数据交互的技术,能够提高用户体验和页面性能。在JavaWeb开发中,我们常常需要实现对数据库中数据的增删改查操作。本文将通过使用Ajax来实现从JSP页面中删除数据库中的数据,来介绍该技术的应用。

假设我们有一个包含学生信息的数据库表,其中包含学生的姓名、年龄和所在班级等信息。现在我们需要在JSP页面中展示这些学生的数据,并提供删除功能,即通过点击删除按钮来从数据库中删除选定的学生记录。

%@ page language="java" contentType="text/html;
     charset=UTF-8"pageEncoding="UTF-8"%>
    !DOCTYPE html>
    html>
    head>
    meta charset="UTF-8">
    title>
    学生信息列表/title>
    script src="https://code.jquery.com/jquery-3.6.0.min.js">
    /script>
    /head>
    body>
    table>
    tr>
    th>
    姓名/th>
    th>
    年龄/th>
    th>
    班级/th>
    th>
    操作/th>
    /tr>
%// 获取学生信息列表的代码// ...// 遍历学生信息列表,生成表格行并输出到页面中for (Student student : studentList) {
    %>
    tr>
    td>
    %= student.getName() %>
    /td>
    td>
    %= student.getAge() %>
    /td>
    td>
    %= student.getClass() %>
    /td>
    td>
    button class="delete-btn" data-id=%= student.getId() %>
    >
    删除/button>
    /td>
    /tr>
%}
    %>
    /table>
    script>
$(function() {
// 绑定删除按钮的点击事件$(".delete-btn").click(function() {
    var studentId = $(this).data("id");
// 发送Ajax请求,调用后台删除学生信息的接口$.ajax({
url: "deleteStudent.jsp",type: "POST",data: {
id: studentId}
,success: function(response) {
// 删除成功后,刷新页面或移除该行数据等操作// ...}
,error: function() {
    alert("删除失败");
}
}
    );
}
    );
}
    );
    /script>
    /body>
    /html>
    

在上述代码中,我们首先通过JSP脚本来获取学生信息列表,并使用循环将每个学生的信息输出到表格中。每个学生信息的最后一列是一个删除按钮,它的data-id属性值设置为对应学生的ID,这样在点击按钮时能够通过JavaScript获取到该学生的ID。

然后,通过jQuery选择器绑定了删除按钮的点击事件。当点击删除按钮时,通过jQuery的data()方法获取到该学生的ID,并传递给后台的删除接口。

后台的删除接口在deleteStudent.jsp文件中实现,在这个JSP中,我们可以通过request.getParameter()方法获取到传递过来的学生ID,并根据ID执行删除数据库中对应的学生记录的代码。

%@ page language="java" contentType="text/html;
     charset=UTF-8"pageEncoding="UTF-8"%>
    %@ page import="java.sql.Connection"%>
    %@ page import="java.sql.DriverManager"%>
    %@ page import="java.sql.Statement"%>
    %@ page import="javax.naming.Context"%>
    %@ page import="javax.naming.InitialContext"%>
    %@ page import="javax.naming.NamingException"%>
    %@ page import="javax.sql.DataSource"%>
    %int studentId = Integer.parseInt(request.getParameter("id"));
try {
    // 获取数据库连接// 方式一:使用DriverManager获取连接Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "password");
    // 方式二:使用DataSource获取连接(推荐使用)// Context ctx = new InitialContext();
    // DataSource ds = (DataSource) ctx.lookup("java:/comp/env/jdbc/mydb");
    // Connection connection = ds.getConnection();
    // 创建Statement对象Statement statement = connection.createStatement();
    // 执行删除语句String sql = "DELETE FROM student WHERE id = " + studentId;
    statement.executeUpdate(sql);
    // 关闭Statement和连接statement.close();
    connection.close();
    // 返回删除成功的响应,通知前端response.getWriter().write("删除成功");
}
 catch (Exception e) {
    e.printStackTrace();
    // 返回删除失败的响应,通知前端response.getWriter().write("删除失败");
}
    %>
    

在deleteStudent.jsp中,我们首先获取前端传递过来的学生ID,并将其转换为整数型。然后根据获取数据库连接的方式,使用DriverManager或者DataSource获取一个数据库连接对象。

然后,创建一个Statement对象,并执行删除操作的SQL语句,即DELETE语句。执行完毕后,记得关闭Statement对象和数据库连接,释放资源。

最后,通过response.getWriter().write()方法向前端返回删除操作的结果。如果删除成功,返回"删除成功";如果删除失败,返回"删除失败"。

通过上述的代码示例,我们实现了通过Ajax在JSP页面中删除数据库中的数据。这样,用户在页面中点击删除按钮时,不会触发页面的刷新,而是通过Ajax请求来与后台交互并删除数据,从而提高了用户体验和页面性能。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: ajax实现jsp表格删除数据库数据
本文地址: https://pptw.com/jishu/536380.html
ajax实现单点登录jsonp ajax回调函数返回json

游客 回复需填写必要信息