package servlet.admin; import java.io.IOException; import java.io.PrintWriter; 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 javabean.JDBCBean; import net.sf.json.JSONObject; /** * Servlet 实现类,用于管理员删除书籍 * * 该 Servlet 处理管理员请求删除书籍的操作,根据书籍 ID 从数据库中删除相应的记录。 * 删除成功后,返回包含成功状态的 JSON 响应;删除失败则返回错误信息。 */ @WebServlet("/admin/bookDel") public class BookDel extends HttpServlet { /** * 处理 GET 请求,执行书籍的删除操作 * * 该方法接收管理员提交的删除请求,获取要删除的书籍 ID,并执行删除操作。 * 删除操作通过 JDBC 执行,如果删除成功,返回成功的 JSON 响应;否则,返回错误信息。 * * @param req 请求对象 * @param resp 响应对象 * @throws ServletException 如果发生 Servlet 错误 * @throws IOException 如果发生 I/O 错误 */ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 设置响应内容类型为 JSON,字符编码为 UTF-8 resp.setContentType("application/json; charset=utf8"); // 获取请求参数中的书籍 ID String id = req.getParameter("id"); // 创建 JSON 对象用于响应数据 JSONObject json = new JSONObject(); // 创建 JDBCBean 对象用于执行数据库操作 JDBCBean db = new JDBCBean(); // 构建 SQL 删除语句,删除指定 ID 的书籍 String sql = "delete from books where id = " + id; // 定义删除操作的结果变量 int result = 0; // 默认状态为失败 int code = 1; String msg = ""; // 如果 ID 不为空且不为 "空" 字符串,则执行删除操作 if (id != null && !id.equals("")) { // 执行 SQL 删除语句,返回影响的行数 result = db.executeUpdate(sql); } // 判断删除操作是否成功,1 表示成功,0 表示失败 if (result == 1) { code = 0; // 删除成功 msg = "删除成功"; // 返回成功消息 } else { code = 1; // 删除失败 msg = "删除失败"; // 返回失败消息 } // 将操作结果封装为 JSON 对象 json.put("code", code); json.put("msg", msg); // 关闭数据库连接 db.close(); // 获取响应输出流并将 JSON 数据写入响应 PrintWriter out = resp.getWriter(); out.print(json.toString()); } }