javaEE项目网上书城后台(如何删除一本书并且有提示)
1.先在dao层将数据删除掉
通过id寻找到这本书并且将它删除掉
/** * 删除一本书的数据 */ public void deleteBookById(String id) { // TODO Auto-generated method stub QueryRunner qr=new QueryRunner(C3p0utils.getDataSourcce()); String sql="delete books where id=?"; qr.update(sql,id); }
2.在service层里面调用dao层已经实现的逻辑
public void deleteBookById(String id) { // TODO Auto-generated method stub BookDaoImpl bookDao=new BookDaoImpl(); bookDao.deleteBookById(id); }
3.将数据在deleteBookByIdServlet里面调用service方法实现删除
关键还要在jsp页面弄一个隐藏标签<input type=hidden name=bookid value=${book.id}>
下面就可以实现删除操作了:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.获取书的id String id=request.getParameter("id");//就是上面写的那一个隐藏的input数值就是book.id //2.查找书 BookServiceImpl bookServiceImpl=new BookServiceImpl(); bookServiceImpl.deleteBookById(id); //3.放在请求对象里面加到list.jsp页面 List<Book> books=bookServiceImpl.findAllBooks(); request.setAttribute("books", books); request.getRequestDispatcher("/admin/products/list.jsp").forward(request, response); }
4.弹窗功能
在删除之后就会有一个功能等待我们去实现,就是将删除按钮点击之后会有一个提示,提醒是否删除数据这就需要我们的js代码来实现该功能
如上图所示功能
//删除书的js代码 //在js里面可以使用EL表达式 function deleteBook(bookname,bookid){ if(confirm('是否要删除【'+book.name+'】这本书?')){ location.href='${pageContext.request.contextPath}/DeleteBookByIdServlet?id='+bookid; }else{ //不删除这本书 } }
当点击确定之后就可以在数据库和页面显示中看到不存在《天龙八部》这本书了!