用javaweb实现用户管理的简易代码
下面是一个简单的用户管理系统的JavaWeb实现代码,包含用户的增删改查操作:
- 创建一个User类,用于存储用户信息:
public class User {
private int id;
private String name;
private int age;
private String email;
public User(int id, String name, int age, String email) {
this.id = id;
this.name = name;
this.age = age;
this.email = email;
}
// getter and setter methods
}
- 创建一个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.setName(user.getName());
u.setAge(user.getAge());
u.setEmail(user.getEmail());
break;
}
}
}
// 根据ID查询用户信息
public User getUserById(int id) {
for (User user : userList) {
if (user.getId() == id) {
return user;
}
}
return null;
}
// 获取所有用户信息
public List<User> getAllUsers() {
return userList;
}
}
- 创建一个Servlet类,用于处理用户请求:
@WebServlet("/user/*")
public class UserServlet extends HttpServlet {
private UserDao userDao;
// 初始化操作
public void init() {
userDao = new UserDao();
}
// 处理GET请求
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String pathInfo = request.getPathInfo();
if (pathInfo == null) {
// 获取所有用户信息
List<User> userList = userDao.getAllUsers();
request.setAttribute("userList", userList);
request.getRequestDispatcher("/user-list.jsp").forward(request, response);
} else {
int id = Integer.parseInt(pathInfo.substring(1));
User user = userDao.getUserById(id);
request.setAttribute("user", user);
request.getRequestDispatcher("/user-form.jsp").forward(request, response);
}
}
// 处理POST请求
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getParameter("action");
if (action.equals("add")) {
// 添加用户
int id = Integer.parseInt(request.getParameter("id"));
String name = request.getParameter("name");
int age = Integer.parseInt(request.getParameter("age"));
String email = request.getParameter("email");
User user = new User(id, name, age, email);
userDao.addUser(user);
response.sendRedirect(request.getContextPath() + "/user");
} else if (action.equals("update")) {
// 更新用户信息
int id = Integer.parseInt(request.getParameter("id"));
String name = request.getParameter("name");
int age = Integer.parseInt(request.getParameter("age"));
String email = request.getParameter("email");
User user = new User(id, name, age, email);
userDao.updateUser(user);
response.sendRedirect(request.getContextPath() + "/user");
} else if (action.equals("delete")) {
// 删除用户
int id = Integer.parseInt(request.getParameter("id"));
userDao.deleteUser(id);
response.sendRedirect(request.getContextPath() + "/user");
}
}
}
- 创建两个JSP页面,一个用于显示用户列表,一个用于添加/更新用户信息:
user-list.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>User List</title>
</head>
<body>
<h1>User List</h1>
<table border="1">
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Age</th>
<th>Email</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<c:forEach items="${userList}" var="user">
<tr>
<td>${user.id}</td>
<td>${user.name}</td>
<td>${user.age}</td>
<td>${user.email}</td>
<td>
<a href="${pageContext.request.contextPath}/user/${user.id}">Edit</a>
<form action="${pageContext.request.contextPath}/user" method="post">
<input type="hidden" name="id" value="${user.id}">
<input type="hidden" name="action" value="delete">
<input type="submit" value="Delete">
</form>
</td>
</tr>
</c:forEach>
</tbody>
</table>
<hr>
<h2>Add User</h2>
<form action="${pageContext.request.contextPath}/user" method="post">
<input type="hidden" name="action" value="add">
<label>ID:</label>
<input type="text" name="id"><br>
<label>Name:</label>
<input type="text" name="name"><br>
<label>Age:</label>
<input type="text" name="age"><br>
<label>Email:</label>
<input type="text" name="email"><br>
<input type="submit" value="Add">
</form>
</body>
</html>
user-form.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>User Form</title>
</head>
<body>
<h1>User Form</h1>
<% if (user == null) { %>
<h2>Add User</h2>
<form action="${pageContext.request.contextPath}/user" method="post">
<input type="hidden" name="action" value="add">
<label>ID:</label>
<input type="text" name="id"><br>
<label>Name:</label>
<input type="text" name="name"><br>
<label>Age:</label>
<input type="text" name="age"><br>
<label>Email:</label>
<input type="text" name="email"><br>
<input type="submit" value="Add">
</form>
<% } else { %>
<h2>Edit User</h2>
<form action="${pageContext.request.contextPath}/user" method="post">
<input type="hidden" name="action" value="update">
<input type="hidden" name="id" value="${user.id}">
<label>ID:</label>
<input type="text" name="id" value="${user.id}" disabled><br>
<label>Name:</label>
<input type="text" name="name" value="${user.name}"><br>
<label>Age:</label>
<input type="text" name="age" value="${user.age}"><br>
<label>Email:</label>
<input type="text" name="email" value="${user.email}"><br>
<input type="submit" value="Update">
</form>
<% } %>
</body>
</html>
- 配置web.xml文件,将UserServlet映射到/user路径下:
<servlet>
<servlet-name>UserServlet</servlet-name>
<servlet-class>com.example.UserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserServlet</servlet-name>
<url-pattern>/user/*</url-pattern>
</servlet-mapping>
现在,我们就实现了一个简单的用户管理系统,可以对用户信息进行增删改查操作
原文地址: https://www.cveoy.top/t/topic/dp3v 著作权归作者所有。请勿转载和采集!