servlet层调用方法if和switch的区别

1.这样是可行的

if("insert".equals(method)) {
    insert(request,response);

}
else if("delete".equals(method)) {
    try {
        delete(request,response);
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}
else if("update".equals(method)) {
    update(request,response);
}
else if("list".equals(method)) {
    try {
        list(request,response);
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}}

  2.这样不行

switch(method){
            case "insert":
                insert(request,response);break;
            case "delete":
             try {
                    delete(request,response);
                } catch (Exception e) {
                    e.printStackTrace();
                }
                break;
            case "update":
                try {
                    update(request,response);
                } catch (Exception e) {
                    e.printStackTrace();
                }
                break;
            case "list":
                try {
                    list(request,response);
                } catch (Exception e) {
                    e.printStackTrace();
                }
                break;


        }

  3.但是这么写可以

switch (method){
            case "findAll"://查询所有数据
                List<Student> list = studentRepository.findAll();//调用StudentRepository中的findAll()方法
                req.setAttribute("list",list);//存入request中
                req.getRequestDispatcher("index.jsp").forward(req,resp);//转发到index.jsp中
            case "delete"://删除操作
                String idStr=req.getParameter("id");
                Integer id=Integer.parseInt(idStr);
                studentRepository.deleteById(id);//根据id删除
                resp.sendRedirect("/student");
                break;
            case "findById":
                idStr=req.getParameter("id");
                id=Integer.parseInt(idStr);
                req.setAttribute("student",studentRepository.findById(id));
                req.getRequestDispatcher("update.jsp").forward(req,resp);
                break;
            case "add":
                req.getRequestDispatcher("add.jsp").forward(req,resp);
        }

  

posted @ 2022-04-11 14:48  Lindseyyip  阅读(47)  评论(0)    收藏  举报