以下是一个基于 JavaWeb 运用 servlet 技术的用户管理系统代码示例,实现增删改查功能,并连接后台数据库。

首先,创建一个 User 类,用于表示用户信息:

public class User {
    private int id;
    private String username;
    private String password;
    private String email;
    
    // 构造方法、getter和setter省略
    
}

接下来,创建一个 UserDao 类,用于操作数据库:

public class UserDao {
    private static List<User> userList = new ArrayList<>();
    
    public void addUser(User user) {
        userList.add(user);
    }
    
    public void deleteUser(int id) {
        for (User user : userList) {
            if (user.getId() == id) {
                userList.remove(user);
                break;
            }
        }
    }
    
    public void updateUser(User user) {
        for (User u : userList) {
            if (u.getId() == user.getId()) {
                u.setUsername(user.getUsername());
                u.setPassword(user.getPassword());
                u.setEmail(user.getEmail());
                break;
            }
        }
    }
    
    public User getUserById(int id) {
        for (User user : userList) {
            if (user.getId() == id) {
                return user;
            }
        }
        return null;
    }
    
    public List<User> getAllUsers() {
        return userList;
    }
}

然后,创建一个 UserServlet 类,用于处理用户管理的各种请求:

@WebServlet("/user")
public class UserServlet extends HttpServlet {
    private UserDao userDao = new UserDao();
    
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }
    
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String action = request.getParameter("action");
        
        if (action == null) {
            action = "list";
        }
        
        switch (action) {
            case "list":
                listUsers(request, response);
                break;
            case "add":
                addUser(request, response);
                break;
            case "delete":
                deleteUser(request, response);
                break;
            case "edit":
                editUser(request, response);
                break;
            case "update":
                updateUser(request, response);
                break;
            default:
                listUsers(request, response);
                break;
        }
    }
    
    private void listUsers(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        List<User> userList = userDao.getAllUsers();
        request.setAttribute("userList", userList);
        request.getRequestDispatcher("userList.jsp").forward(request, response);
    }
    
    private void addUser(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        String email = request.getParameter("email");
        
        User user = new User();
        user.setUsername(username);
        user.setPassword(password);
        user.setEmail(email);
        
        userDao.addUser(user);
        
        response.sendRedirect("user?action=list");
    }
    
    private void deleteUser(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        int id = Integer.parseInt(request.getParameter("id"));
        userDao.deleteUser(id);
        response.sendRedirect("user?action=list");
    }
    
    private void editUser(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        int id = Integer.parseInt(request.getParameter("id"));
        User user = userDao.getUserById(id);
        request.setAttribute("user", user);
        request.getRequestDispatcher("editUser.jsp").forward(request, response);
    }
    
    private void updateUser(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        int id = Integer.parseInt(request.getParameter("id"));
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        String email = request.getParameter("email");
        
        User user = new User();
        user.setId(id);
        user.setUsername(username);
        user.setPassword(password);
        user.setEmail(email);
        
        userDao.updateUser(user);
        
        response.sendRedirect("user?action=list");
    }
}

最后,创建一个 userList.jsp 用于显示用户列表,创建一个 editUser.jsp 用于编辑用户信息。

userList.jsp:

<!DOCTYPE html>
<html>
<head>
    <title>User List</title>
</head>
<body>
    <h1>User List</h1>
    
    <table border="1">
        <tr>
            <th>ID</th>
            <th>Username</th>
            <th>Password</th>
            <th>Email</th>
            <th>Edit</th>
            <th>Delete</th>
        </tr>
        
        <c:forEach items="${userList}" var="user">
            <tr>
                <td>${user.id}</td>
                <td>${user.username}</td>
                <td>${user.password}</td>
                <td>${user.email}</td>
                <td><a href="user?action=edit&id=${user.id}">Edit</a></td>
                <td><a href="user?action=delete&id=${user.id}">Delete</a></td>
            </tr>
        </c:forEach>
    </table>
    
    <br>
    <a href="user?action=edit">Add User</a>
</body>
</html>

editUser.jsp:

<!DOCTYPE html>
<html>
<head>
    <title>Edit User</title>
</head>
<body>
    <h1>Edit User</h1>
    
    <form action="user?action=${empty user ? 'add' : 'update'}" method="post">
        <input type="hidden" name="id" value="${empty user ? '' : user.id}">
        <label>Username:</label>
        <input type="text" name="username" value="${empty user ? '' : user.username}">
        <br>
        <label>Password:</label>
        <input type="password" name="password" value="${empty user ? '' : user.password}">
        <br>
        <label>Email:</label>
        <input type="email" name="email" value="${empty user ? '' : user.email}">
        <br>
        <input type="submit" value="${empty user ? 'Add' : 'Update'}">
    </form>
</body>
</html>

以上代码示例实现了一个简单的用户管理系统,包括增加、删除、修改和查找用户的功能,并且连接了后台数据库。你可以根据实际需求对代码进行进一步的修改和优化。

JavaWeb Servlet 用户管理系统:增删改查功能实现

原文地址: https://www.cveoy.top/t/topic/m4kt 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录