访问 StudentServlet 返回的页面是 list.jsp 经过 list.jsp 页面超链接 add
访问 StudentAddServlet 返回的页面时 add.jsp 提交表单 访问StudentAddProcessServlet 返回 List.jsp
再次经过 list.jsp 页面超链接 update , delete
访问 StudentUpdateServlet StudentDeleteServlet 返回的页面时 Update.jsp(提交表单访问StudentUpdateProcessServlet返回List.jsp) delete.jsp
***(jsp 与 servlet 中的调用时参数的发送和接受问题)***
—**************************(下面的其它jsp页面类同)*************************************
(
根据请求头调用doget dopost
表单的 form表单中 method = post 为 dopost 调用
method = get 为 doget 调用
在浏览器中直接键入地址,为 doget 调用方法
表单的重复提交时 request 造成的
传递数据一定要使 request
)
(list.jsp页面接受servlet传过来的List ------- List list = (List)request.getAttribute("list");)
Update.jsp页面接受servlet传过来的List
Student stu = (Student)request.getAttribute("stu");
List list = (List)request.getAttribute("classsList");
以下是代码的实现
(StudentServlet )
public void List(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, SQLException {
StudentDAO studao = new StudentDAO();
List list = studao.studentList();
request.setAttribute("list", list);
request.getRequestDispatcher("student/list.jsp").forward(request,response);
}
(StudentAddServlet )
public void add(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, SQLException {
ClasssDAO studao = new ClasssDAO();
List list = studao.classList();
request.setAttribute("classslist", list);
request.getRequestDispatcher("student/add.jsp").forward(request, response);
}
(StudentAddProcessServlet )
public void addProcess(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, SQLException {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
String name = request.getParameter("name");
String sex = request.getParameter("sex");
String phone = request.getParameter("phone");
int classsId = Integer.parseInt(request.getParameter("classsId"));
StudentDAO studao = new StudentDAO();
int row = studao.add(name, sex, phone, classsId);
request.getSession().setAttribute("row", row);
response.sendRedirect("result.jsp");
}
(StudentUpdateServlet )
public void update(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, SQLException {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
//取得参数
int id = Integer.parseInt(request.getParameter("id"));
StudentDAO studao = new StudentDAO();
Student stu = studao.getstudentById(id);
List list = new ClasssDAO().classList();
request.setAttribute("stu", stu);
request.setAttribute("classsList", list);
request.getRequestDispatcher("student/update.jsp").forward(request, response);
}
(StudentUpdateProcessServlet )
public void updateProcess(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, SQLException {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
int id = Integer.parseInt(request.getParameter("id"));
String name = request.getParameter("name");
String sex = request.getParameter("sex");
String phone = request.getParameter("phone");
int classsId = Integer.parseInt(request.getParameter("classsId"));
StudentDAO studao = new StudentDAO();
int row = studao.update(id,name,sex,phone,classsId);
request.getSession().setAttribute("row",row);
response.sendRedirect("result.jsp");
}
(StudentDeleteProcessServlet )
public void delete(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, SQLException {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
int id = Integer.parseInt(request.getParameter("id"));
StudentDAO stu = new StudentDAO();
int row = stu.delete(id);
request.getSession().setAttribute("row", row);
response.sendRedirect("result.jsp");
}
----------------------------------------------------------------------------------
(List.Jsp)
<table class="gridtable" style="width: 100%;">
<tr>
<th colspan="6" align="center">
<input type=button value="add" onclick="window.location.href='${basePath }StudentServlet?method=add'">
<a href="#">import</a>
<a href="d">export</a>
</th>
</tr>
<tr>
<th>id</th>
<th>name</th>
<th>sex</th>
<th>phone</th>
<th>classsid</th>
<th>action</th>
</tr>
<c:forEach items="${list}" var="stu">
<tr>
<td>${stu.id}</td>
<td>${stu.name}</td>
<td>${stu.sex}</td>
<td>${stu.phone}</td>
<td>${stu.classsid}</td>
<td>
<input type=button value="update" onclick="window.location.href='${basePath }StudentServlet?method=update&id=${stu.id}'">
<input type=button value="delete" onclick="window.location.href='${basePath }StudentServlet?method=delete&id=${stu.id}'">
</td>
</tr>
</c:forEach>
</table>
(Add.Jsp)
<form action="${basePath}StudentAddProcessServlet" method="post">
<table id="datagrid" class="gridtable" style="width: 100%;">
<tr>
<th>
name
</th>
<td>
<input type="text" name="name" value="" />
</td>
</tr>
<tr>
<th>
sex
</th>
<td>
<input type="text" name="sex" value="" />
</td>
</tr>
<tr>
<th>
phone
</th>
<td>
<input type="text" name="phone" value="" />
</td>
</tr>
<tr>
<th>
classsId
</th>
<td>
<select name="classsId">
<c:forEach items="${classslist}" var="cla">
<option value="${cla.id }">${cla.name }</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<td colspan="2">
<input type="submit" name="sub" value="提交" />
</td>
</tr>
</table>
</form>