JDBC操作数据库之删除数据

1、在show.jsp页面中添加一下代码

<td><a href="DeleteServlet?id=<%=book.getId()%>">删除</a></td>
2、实现删除数据业务功能的Servlet(DeleteServlet.java)

package com.Connection.Test;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.mysql.jdbc.Driver;

/**
 * Servlet implementation class DeleteServlet
 * 删除数据库books中指定id的图书信息
 */
@WebServlet("/DeleteServlet")
public class DeleteServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public DeleteServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		int id = Integer.valueOf(request.getParameter("id"));
		
		try {
			Class.forName("com.mysql.jdbc.Driver");
			String url = "jdbc:mysql://localhost:3306/test";
			String username = "root";
			String password = "12345";
			
			Connection conn = DriverManager.getConnection(url, username, password);
			String sql = "delete from books where id=?";
			PreparedStatement pstmt = conn.prepareStatement(sql);
			pstmt.setInt(1, id);
			pstmt.executeUpdate();
			
			pstmt.close();
			conn.close();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		response.sendRedirect("FindServlet");
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		this.doGet(request, response);
	}

}



  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以提供一个简单的Java示例代码来演示如何使用JDBC连接数据库删除数据。请注意,这只是一个基本示例,实际情况可能会因不同的数据库和具体需求而有所不同。 首先,您需要确保已经安装并配置了相应的数据库驱动程序。 然后,您可以按照以下步骤进行操作: 1. 导入必要的Java库和类: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; ``` 2. 建立数据库连接: ```java Connection conn = null; String url = "jdbc:mysql://localhost:3306/mydatabase"; String username = "root"; String password = "mypassword"; try { conn = DriverManager.getConnection(url, username, password); } catch (SQLException e) { System.out.println("连接数据库失败:" + e.getMessage()); } ``` 这里使用了MySQL数据库,用户名为root,密码为mypassword。您需要将这些值替换为您自己的数据库信息。 3. 创建一个Statement对象: ```java Statement stmt = null; try { stmt = conn.createStatement(); } catch (SQLException e) { System.out.println("创建Statement对象失败:" + e.getMessage()); } ``` 4. 编写SQL语句并执行删除操作: ```java String sql = "DELETE FROM mytable WHERE id = 1"; try { stmt.executeUpdate(sql); System.out.println("删除成功!"); } catch (SQLException e) { System.out.println("删除数据失败:" + e.getMessage()); } ``` 这里的SQL语句将删除名为mytable的表中id为1的记录。您需要将其替换为您自己的SQL语句。 5. 关闭Statement和Connection对象: ```java try { if (stmt != null) { stmt.close(); } if (conn != null) { conn.close(); } } catch (SQLException e) { System.out.println("关闭连接失败:" + e.getMessage()); } ``` 完整的代码示例: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class DeleteDataExample { public static void main(String[] args) { Connection conn = null; String url = "jdbc:mysql://localhost:3306/mydatabase"; String username = "root"; String password = "mypassword"; try { conn = DriverManager.getConnection(url, username, password); } catch (SQLException e) { System.out.println("连接数据库失败:" + e.getMessage()); } Statement stmt = null; try { stmt = conn.createStatement(); } catch (SQLException e) { System.out.println("创建Statement对象失败:" + e.getMessage()); } String sql = "DELETE FROM mytable WHERE id = 1"; try { stmt.executeUpdate(sql); System.out.println("删除成功!"); } catch (SQLException e) { System.out.println("删除数据失败:" + e.getMessage()); } try { if (stmt != null) { stmt.close(); } if (conn != null) { conn.close(); } } catch (SQLException e) { System.out.println("关闭连接失败:" + e.getMessage()); } } } ``` 希望这个示例代码能够对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值