cuojing0496 2017-05-20 01:22 采纳率: 0%
浏览 840

关于jsp和servlet的问题

我现在想实现 点击表格中的某一行 然后再点击删除按钮,可以直接删除某条数据,但是现在拿到id一直报错,求大神指导

这是servlet中的代码
private void delete(HttpServletRequest request, HttpServletResponse response) {
try {
request.setCharacterEncoding("utf-8");
} catch (UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
int id =Integer.parseInt(request.getParameter("id")); //这一行报错,错误是java.lang.NumberFormatException: null

    boolean flag=dao.delete(id);
    if(flag){

        try {
            PrintWriter outt = response.getWriter();
            outt.print("<script>alert('删除成功!');window.location.href='student?type=show';</script>");
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }else{
        try {
            PrintWriter outa = response.getWriter();
            outa.print("<script>alert('删除失败!');window.location.href='student?type=show';</script>");
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}

这是dao层的代码

public boolean delete(int id){
    boolean flag= false;
    Connection connection=null;
    PreparedStatement preparedStatement=null;
    String sql ="delete from student where id = ?;";
    try {
        Class.forName("com.mysql.jdbc.Driver");
        connection=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/school","root","root");
        preparedStatement=connection.prepareStatement(sql);
        preparedStatement.setInt(1, id);
        int result=preparedStatement.executeUpdate();
        if(result>0){
            flag=true;
        }
    } catch (ClassNotFoundException e) {

        e.printStackTrace();
    } catch (SQLException e) {

        e.printStackTrace();
    }



    return flag;

}


这是jsp页面中的获取id的代码

 $(document).ready(function(){
var selectId=0;
$("#modify").click(function(){
window.location.href="student?type=showModify&id="+selectId+"";

});

$("tr").click(function(){
$("tr").removeClass("info");
$(this).addClass("info");
selectId=$(this).data("id");
});


});

    求大神指导。。!!!!
  • 写回答

2条回答

  • Nihility/ 2017-05-20 06:48
    关注
     java.lang.NumberFormatException:null // 数字类型转换异常
     // 先输出
     System.out.println(request.getParameter("id")); // 这里应该是个null
     // 也就是说,你前台没把id这个值传过来,最直接的是检查请求带过来的参数,应该是没id这个参数的。
    
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。