Để tạo trang admin thêm, sửa, xóa người dùng, bạn có thể thực hiện các bước sau:
- Tạo một servlet để xử lý các yêu cầu từ trang admin. Trong servlet này, bạn sẽ tạo các phương thức để thêm, sửa và xóa người dùng. Ví dụ:
@WebServlet("/admin/users") public class AdminUserServlet extends HttpServlet { private UserDao userDao; public void init() { userDao = new UserDao(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { List<User> users = userDao.getAllUsers(); request.setAttribute("users", users); RequestDispatcher dispatcher = request.getRequestDispatcher("/admin/user-list.jsp"); dispatcher.forward(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String action = request.getParameter("action"); if (action.equalsIgnoreCase("addUser")) { String username = request.getParameter("username"); String password = request.getParameter("password"); String fullname = request.getParameter("fullname"); String email = request.getParameter("email"); userDao.addUser(new User(username, password, fullname, email)); response.sendRedirect("users"); } else if (action.equalsIgnoreCase("editUser")) { int id = Integer.parseInt(request.getParameter("id")); String username = request.getParameter("username"); String password = request.getParameter("password"); String fullname = request.getParameter("fullname"); String email = request.getParameter("email"); userDao.updateUser(new User(id, username, password, fullname, email)); response.sendRedirect("users"); } else if (action.equalsIgnoreCase("deleteUser")) { int id = Integer.parseInt(request.getParameter("id")); userDao.deleteUser(id); response.sendRedirect("users"); } } }
- Tạo trang JSP để hiển thị danh sách người dùng và cung cấp giao diện để thêm, sửa và xóa người dùng. Ví dụ:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>User List</title> </head> <body> <h1>User List</h1> <table> <tr> <th>ID</th> <th>Username</th> <th>Fullname</th> <th>Email</th> <th>Action</th> </tr> <c:forEach var="user" items="${users}"> <tr> <td>${user.id}</td> <td>${user.username}</td> <td>${user.fullname}</td> <td>${user.email}</td> <td> <a href="edit-user.jsp?id=${user.id}">Edit</a> | <a href="admin/users?action=deleteUser&id=${user.id}">Delete</a> </td> </tr> </c:forEach> </table> <h2>Add User</h2> <form action="admin/users" method="post"> <input type="hidden" name="action" value="addUser"> <label>Username:</label> <input type="text" name="username" required><br>