数值(传参)错误
这个问题是因为传入的数值后,再次使用的时候使用不正确造成的。
index.jsp
<dl class='paper a1'>
<dt>
<span class='num'>No.<%=listMess.get(i).getId() %></span>
</dt>
</dl>
DelMessServlet.jsp
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");//解决post乱码问题
response.setContentType("text/html;charset=utf-8");//解决网页输出的乱码问题
//获取要删除的id
int id=Integer.valueOf(request.getParameter("id"));
//new服务
MessService ms=new MessServiceImpl();
int result=ms.DelMess(id);
response.sendRedirect("index.jsp");
}
这里的jsp文件中,num包括了 “No.” 这个字符串;
Java文件只直接使用了Integer.valueOf()
,将字符串强转为int类型,导致这个Java文件编译时不会报错;
但是当需要连接数据库,进行删除操作的时候,就会出现报错状况。
此时需要修改:
index.jsp
<dl class='paper a1'>
<dt>
<span class='num'>No.<span class='id'><%=listMess.get(i).getId() %></span></span>
</dt>
</dl>
可以像这样直接添加span标签,也可以在Java文件内添加字符串的筛选判断。
报错:
注意:需要仔细检查输入的数值类型是否正确。