Java web用户列表
时间: 2023-09-20 16:11:10 浏览: 87
实现 Java web 用户列表的基本步骤如下:
1. 创建用户实体类,包含用户属性,例如用户名、密码、邮箱、手机号等。
2. 创建 DAO(数据访问对象)类,包含对用户的增加、删除、修改、查询等操作方法。
3. 创建用户控制器(Controller)类,处理用户请求并调用 DAO 类的相应方法。
4. 创建用户视图(View)页面,用来显示用户列表数据。
5. 在用户视图页面中使用 JSP 标签库或 EL 表达式调用控制器类中的方法,获取用户列表数据并显示在页面中。
以下是示例代码:
1. 用户实体类
```java
public class User {
private int id;
private String username;
private String password;
private String email;
private String phone;
// getter and setter methods
}
```
2. DAO 类
```java
public class UserDao {
private Connection conn;
public UserDao() {
// 获取数据库连接
conn = DBUtil.getConnection();
}
// 添加用户
public void addUser(User user) {
// 执行 SQL 语句,插入用户数据
// ...
}
// 删除用户
public void deleteUser(int id) {
// 执行 SQL 语句,删除指定 id 的用户数据
// ...
}
// 修改用户信息
public void updateUser(User user) {
// 执行 SQL 语句,更新用户数据
// ...
}
// 查询所有用户
public List<User> getAllUsers() {
// 执行 SQL 语句,查询所有用户数据并返回结果集
// ...
// 将查询结果集转换为 List<User> 对象
List<User> userList = new ArrayList<User>();
// ...
return userList;
}
// 根据 id 查询用户
public User getUserById(int id) {
// 执行 SQL 语句,查询指定 id 的用户数据并返回结果集
// ...
// 将查询结果集转换为 User 对象
User user = new User();
// ...
return user;
}
}
```
3. 控制器类
```java
public class UserController {
private UserDao userDao;
public UserController() {
userDao = new UserDao();
}
// 处理添加用户请求
public void addUser(HttpServletRequest request, HttpServletResponse response) {
// 获取表单数据并封装为 User 对象
User user = new User();
// ...
// 调用 DAO 类的 addUser 方法添加用户
userDao.addUser(user);
// 返回用户列表页面
// ...
}
// 处理删除用户请求
public void deleteUser(HttpServletRequest request, HttpServletResponse response) {
// 获取要删除的用户 id
int id = Integer.parseInt(request.getParameter("id"));
// 调用 DAO 类的 deleteUser 方法删除用户
userDao.deleteUser(id);
// 返回用户列表页面
// ...
}
// 处理修改用户请求
public void updateUser(HttpServletRequest request, HttpServletResponse response) {
// 获取表单数据并封装为 User 对象
User user = new User();
// ...
// 调用 DAO 类的 updateUser 方法修改用户信息
userDao.updateUser(user);
// 返回用户列表页面
// ...
}
// 处理查询所有用户请求
public void getAllUsers(HttpServletRequest request, HttpServletResponse response) {
// 调用 DAO 类的 getAllUsers 方法查询所有用户
List<User> userList = userDao.getAllUsers();
// 将用户列表数据存储到 request 对象中
request.setAttribute("userList", userList);
// 转发到用户列表页面
// ...
}
// 处理根据 id 查询用户请求
public void getUserById(HttpServletRequest request, HttpServletResponse response) {
// 获取要查询的用户 id
int id = Integer.parseInt(request.getParameter("id"));
// 调用 DAO 类的 getUserById 方法查询用户
User user = userDao.getUserById(id);
// 将用户数据存储到 request 对象中
request.setAttribute("user", user);
// 转发到用户详情页面
// ...
}
}
```
4. 用户视图页面
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>用户列表</title>
</head>
<body>
<table>
<thead>
<tr>
<th>ID</th>
<th>用户名</th>
<th>邮箱</th>
<th>手机号</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach var="user" items="${userList}">
<tr>
<td>${user.id}</td>
<td>${user.username}</td>
<td>${user.email}</td>
<td>${user.phone}</td>
<td>
<a href="getUserById?id=${user.id}">查看</a>
<a href="deleteUser?id=${user.id}">删除</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</body>
</html>
```
在该页面中,使用 JSP 标签库的 forEach 标签遍历从控制器类获取的用户列表数据,并使用 EL 表达式显示数据。同时,通过 href 属性将用户 id 传递给控制器类的相应方法,实现用户详情和删除操作。
阅读全文