我正在尝试使用 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();