学生信息管理系统(三)
删除学生信息
1.如何在这里弹出对话框,用户点击确定,就马上去请求Servlet
2.如何知道用户点击的是确定
3.如何在jsp的方法中请求Servlet
-
点击超链接,弹出一个询问是否删除的对话框,如果点击了确定,那么就真的删除。
<a href="#" onclick="doDelete(${stu.sid})">删除</a>
- 让超链接,执行一个js方法
<script type="text/javascript">
function doDelete(sid) {
/* 如果这里弹出的对话框,用户点击的是确定,就马上去请求Servlet。
如何知道用户点击的是确定。
如何在js的方法中请求servlet。 */
var flag = confirm("是否确定删除?");
if(flag){
//表明点了确定。 访问servlet。 在当前标签页上打开 超链接,
//window.location.href="DeleteServlet?sid="+sid;
location.href="DeleteServlet?sid="+sid;
}
}
</script>
-
在js访问里面判断点击的选项,然后跳转到servlet。
-
servlet收到了请求,然后去调用service , service去调用dao
代码:
- DeleteServlet
package e.servlet;
import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import e.service.StudentService;
import e.service.impl.StudentServiceImpl;
/**
* Servlet implementation class DeleteServlet
*/
public class DeleteServlet extends HttpServlet {
/**
* 用于处理删除学生
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {
//1.接受id
int sid=Integer.parseInt(request.getParameter("sid"));
System.out.println("sid="+sid);
//2.执行删除
StudentService service=new StudentServiceImpl();
service.delete(sid);
//3.跳转到列表页
request.getRequestDispatcher("StudentServlet").forward(request, response);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
- StudentService
/**
* 根据id删除学生
* @param sid
* @throws SQLException
*/
void delete(int sid)throws SQLException;
- StudentServiceImpl
@Override
public void delete(int sid) throws SQLException {
// TODO Auto-generated method stub
StudentDao dao=new StudentDaoImpl();
dao.delete(sid);
}
- dao
/**
* 根据sid删除学生
* @param sid
* @throws SQLException
*/
void delete(int sid)throws SQLException;
- StudentDaoImpl
/**
* 根据id删除学生
* @param sid
* @throws SQLException
*/
void delete(int sid)throws SQLException;