Servlet文件运行出现Integer.valueOf( )报错For input string: ""

Servlet文件运行出现Integer.valueOf( )报错For input string: ""
这是对照视频敲的,也对照过人家的源代码,不知道为什么在我这就报错了,也没有空字符串啊?
这是报错:

img


这是报错提示的代码部分:

public void updateDoctor(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        String did = request.getParameter("did");
        String name = request.getParameter("name");
        String identity = request.getParameter("identity");
        String phone = request.getParameter("phone");
        String sex = request.getParameter("sex");
        String email = request.getParameter("email");
        String department = request.getParameter("department");
        String education = request.getParameter("education");
        String remark = request.getParameter("remark");
        Doctor doctor = new Doctor(Integer.valueOf(did), name, Integer.valueOf(sex), identity, phone, email,Integer.valueOf(department),
                    Integer.valueOf(education),remark);
                boolean flag=doctorService.updateDoctor(doctor);
                if(flag) {
                    request.getRequestDispatcher("doctor?method=findDoctorByPage").forward(request, response);
                }
        
        
    }

调试
Doctor doctor = new Doctor(Integer.valueOf(did), name, Integer.valueOf(sex), identity, phone, email,Integer.valueOf(department),
在这里下个断点
看上面的变量,有没有不是数字的。

这个是因为 request.getParameter("did") 从HttpServletRequest里获取did参数,没有获取到,你可以尝试在

 String did = request.getParameter("did");
System.out.println(did);

打印获取到的参数应该为空

看一下你那几个参数接到的是什么,Integer.valueOf(String s)就是不支持空字符串的