如何将数据从jsp传递到servlet?
how to pass data form jps to servlet?
我正在 jsp 和 servlet 中开发简单的 CRUD 示例项目。但是我无法通过 URL < a href="servletName" value="<%= id.getid()" name=[=17= 将数据从 jsp 传递到 servlet ]>删除。在 servlet 页面中,我试图通过 int id = Integer.parseInt(request.getParameeter("id")) 获取该值。但我得到一个空值。
下面是我的 jsp 和 servlet 代码。
<tbody>
<%
for (books b:book){
%>
<tr>
<th scope="row"><%= b.getId() %></th>
<td><%= b.getBookName() %></td>
<td><%= b.getBookDesc() %></td>
<td><%= b.getAuthName() %></td>
<td><%= b.getCat() %></td>
<td><a href="editbook.jsp?id=<%= b.getId() %>">Edit</a><a href="DeleteBookServlet" name="deleteId" value="<%= b.getId() %>">Delete</a></td>
<!--data-toggle="modal" data-target="#editBooks"-->
</tr>
<%
}
%>
</tbody>
Servlet 代码
String id = request.getParameter("deleteId");
int bid = Integer.parseInt(id);
try{
BooksDao bkd = new BooksDao(ConnectionDao.getCon());
bkd.deleteBook(bid);
response.sendRedirect("index.jsp");
}catch(Exception e){
e.printStackTrace();
}
您没有将 <a>
标记中的 value
传递给 servlet,这是它返回 null
的原因。而是像下面这样:
<a href="DeleteBookServlet?deleteId=<%=b.getId()%>" name="deleteId">Delete</a>
并使用
在 servlet 中获取它
int id = Integer.parseInt(request.getParameter("deleteId"));
我正在 jsp 和 servlet 中开发简单的 CRUD 示例项目。但是我无法通过 URL < a href="servletName" value="<%= id.getid()" name=[=17= 将数据从 jsp 传递到 servlet ]>删除。在 servlet 页面中,我试图通过 int id = Integer.parseInt(request.getParameeter("id")) 获取该值。但我得到一个空值。 下面是我的 jsp 和 servlet 代码。
<tbody>
<%
for (books b:book){
%>
<tr>
<th scope="row"><%= b.getId() %></th>
<td><%= b.getBookName() %></td>
<td><%= b.getBookDesc() %></td>
<td><%= b.getAuthName() %></td>
<td><%= b.getCat() %></td>
<td><a href="editbook.jsp?id=<%= b.getId() %>">Edit</a><a href="DeleteBookServlet" name="deleteId" value="<%= b.getId() %>">Delete</a></td>
<!--data-toggle="modal" data-target="#editBooks"-->
</tr>
<%
}
%>
</tbody>
Servlet 代码
String id = request.getParameter("deleteId");
int bid = Integer.parseInt(id);
try{
BooksDao bkd = new BooksDao(ConnectionDao.getCon());
bkd.deleteBook(bid);
response.sendRedirect("index.jsp");
}catch(Exception e){
e.printStackTrace();
}
您没有将 <a>
标记中的 value
传递给 servlet,这是它返回 null
的原因。而是像下面这样:
<a href="DeleteBookServlet?deleteId=<%=b.getId()%>" name="deleteId">Delete</a>
并使用
在 servlet 中获取它int id = Integer.parseInt(request.getParameter("deleteId"));