there is a Servlet such, the essence of its work: delete, add, edit users on the JSP page. It needs to be redone so that there is one method in the Geth and Post methods that calls the required methods: edit, delete, and then .... how to create such a method? and how should it look like? however, the Geth and Fast methods should call only this method.
public class UserController extends HttpServlet { private static final long serialVersionUID = 1L; private static String INSERT_OR_EDIT = "/user.jsp"; private static String LIST_USER = "/listUser.jsp"; private UserDao dao; public UserController() { super(); dao = new UserDao(); } private void delete(HttpServletRequest request, HttpServletResponse response) { int userId = Integer.parseInt(request.getParameter("userId")); dao.deleteUser(userId); request.setAttribute("users", dao.getAllUsers()); } private void edit(HttpServletRequest request, HttpServletResponse response) { int userId = Integer.parseInt(request.getParameter("userId")); User user = dao.getUserById(userId); request.setAttribute("user", user); } private void listUsers(HttpServletRequest request, HttpServletResponse response) { request.setAttribute("users", dao.getAllUsers()); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String forward=""; String action = request.getParameter("action"); if (action.equalsIgnoreCase("delete")){ delete(request, response); forward = LIST_USER; /* один метод, который различает внутри себя такой запрос и вызывает соответствующий метод common, edit..*/ } else if (action.equalsIgnoreCase("edit")){ forward = INSERT_OR_EDIT; edit(request, response); } else if (action.equalsIgnoreCase("listUser")){ forward = LIST_USER; listUsers(request, response); } else { forward = INSERT_OR_EDIT; } RequestDispatcher view = request.getRequestDispatcher(forward); view.forward(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { User user = new User(); user.setFirstName(request.getParameter("firstName")); user.setLastName(request.getParameter("lastName")); try { Date dob = new SimpleDateFormat("MM/dd/yyyy").parse(request.getParameter("dob")); user.setDob(dob); } catch (ParseException e) { e.printStackTrace(); } user.setEmail(request.getParameter("email")); String userid = request.getParameter("userid"); if(userid == null || userid.isEmpty()) { dao.addUser(user); } else { user.setUserid(Integer.parseInt(userid)); dao.updateUser(user); } RequestDispatcher view = request.getRequestDispatcher(LIST_USER); listUsers(request, response); view.forward(request, response); } }