我正在尝试使用 jsp 和 servlet 从我的 psql 数据库中使用复选框来删除条目
I'm trying to delete an entry by using a checkbox from my psql database using jsp and servlet
我正在尝试从我的数据库中删除选中的条目,但它不起作用。
jsp页面代码如下:
<c:forEach var="raportti" items="${raportit}">
<tr value="${raportti.raportti_id}" >
<td><c:out value="${raportti.potilasraportti}"/></td>
<td ><c:out value="${raportti.hoito_ohjeet}"/></td>
<td>
<input type="checkbox" name="checkbox" value="${raportti.raportti_id}"/></td>
</tr> </c:forEach>
servlet 如下所示:
else if (button.equals("Poista")&&request.getParameter("asiakas")
!=null&& request.getParameter("checkbox") !=null) {
List<Raportti> raportit=(List<Raportti>)request.getAttribute("checkbox");
checkbox = Integer.parseInt(request.getParameter("checkbox"));
// raportti_id = Integer.parseInt(request.getParameter("raportti"));
try {
Raportti r = new Raportti();
r.poistaRaportti(checkbox);
} catch (SQLException ex) {
Logger.getLogger(Laakarinsivu.class.getName()).log(Level.SEVERE, null, ex);
} catch (NamingException ex) {
Logger.getLogger(Laakarinsivu.class.getName()).log(Level.SEVERE, null, ex);
}
}
我class中的方法是这样的:
public void poistaRaportti(int raportti_id) throws SQLException, NamingException {
String sql = "DELETE FROM raportti WHERE raportti_id = ?";
Connection yhteys = Yhteys.getYhteys();
PreparedStatement kysely = yhteys.prepareStatement(sql);
ResultSet tulokset = kysely.executeQuery();
kysely.close();
tulokset.close();
yhteys.close();
}
我试图通过单击复选框来获取 "raportti_id" 值,但在我按下删除按钮后它并没有被删除。有什么建议吗?
设置参数id,使用executeUpdate
进行数据库写操作:
kysely.setInt(1, raportti_id);
int rows = kysely.executeUpdate();
我正在尝试从我的数据库中删除选中的条目,但它不起作用。
jsp页面代码如下:
<c:forEach var="raportti" items="${raportit}">
<tr value="${raportti.raportti_id}" >
<td><c:out value="${raportti.potilasraportti}"/></td>
<td ><c:out value="${raportti.hoito_ohjeet}"/></td>
<td>
<input type="checkbox" name="checkbox" value="${raportti.raportti_id}"/></td>
</tr> </c:forEach>
servlet 如下所示:
else if (button.equals("Poista")&&request.getParameter("asiakas")
!=null&& request.getParameter("checkbox") !=null) {
List<Raportti> raportit=(List<Raportti>)request.getAttribute("checkbox");
checkbox = Integer.parseInt(request.getParameter("checkbox"));
// raportti_id = Integer.parseInt(request.getParameter("raportti"));
try {
Raportti r = new Raportti();
r.poistaRaportti(checkbox);
} catch (SQLException ex) {
Logger.getLogger(Laakarinsivu.class.getName()).log(Level.SEVERE, null, ex);
} catch (NamingException ex) {
Logger.getLogger(Laakarinsivu.class.getName()).log(Level.SEVERE, null, ex);
}
}
我class中的方法是这样的:
public void poistaRaportti(int raportti_id) throws SQLException, NamingException {
String sql = "DELETE FROM raportti WHERE raportti_id = ?";
Connection yhteys = Yhteys.getYhteys();
PreparedStatement kysely = yhteys.prepareStatement(sql);
ResultSet tulokset = kysely.executeQuery();
kysely.close();
tulokset.close();
yhteys.close();
}
我试图通过单击复选框来获取 "raportti_id" 值,但在我按下删除按钮后它并没有被删除。有什么建议吗?
设置参数id,使用executeUpdate
进行数据库写操作:
kysely.setInt(1, raportti_id);
int rows = kysely.executeUpdate();