效果展示

获取所有用户
前端页面
<c:if test="${not empty users}">
<c:forEach items="${users}" var="user" varStatus="vs">
<tr>
<td><input name="ids" type="checkbox" value="" /></td>
<td>${vs.count}</td>
<td>${user.name}</td>
<td>
<c:if test="${user.sex==0}">女</c:if>
<c:if test="${user.sex==1}">男</c:if>
</td>
<td>${user.phoneNumber}</td>
<td>${user.area}</td>
<td>
<c:if test="${user.manager==0}"><font color="blue">普通用户</font></c:if>
<c:if test="${user.manager==1}"><font color="red">管理员</font></c:if>
</td>
<td>${user.name}</td>
<td style="text-align: center;"><img src="/xm_upload/${user.photo}" width="
</td>
</tr>
</c:forEach>
</c:if>
<c:if test="${not empty users}"> c:if标签 是对集合进行判断,如果为空则不展示,不为空则进行展示
性别和是否管理员这两项在数据库中都是存储的0和1,在前台展示的时候需要通过c:if进行判断
图片的展示是在tomcat中映射本地硬盘,得到一个虚拟路径xm_upload,图片的数据库字段存储的仅为图片名称,在前台显示的时候,虚拟路径+图片名称即可显示图片
在数据库中查询所有用户,返回list集合,存入session中,前台获取session中的数据进行展示
dao层
//查询所有用户
public List<User> getUsers() {
QueryRunner qr = new QueryRunner(C3p0Utils.getDataSource());
String sql = "select * from user";
try {
return qr.query(sql, new BeanListHandler<User>(User.class) );
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
service层
public List<User> getUsers() {
return userDao.getUsers();
}
web层
public String getUsers(HttpServletRequest request, HttpServletResponse response){
//调用业务层处理
UserService userService = new UserServiceImpl();
List<User> users = userService.getUsers();
//结果展示
request.getSession().setAttribute("users", users);
//返回到页面
return "admin/user_list";
}
权限管理
管理员可设置/取消管理员权限,这一功能主要涉及的是数据库中是否为管理员字段这一个值的改变
前端
<c:if test="${user.manager==0}">
<a href="${pageContext.request.contextPath}/user?method=updateRole&manager=1&uid=${user.uid}">
<font color="red">设置为管理员</font></a>
</c:if>
<c:if test="${user.manager==1}">
<a href="${pageContext.request.contextPath}/user?method=updateRole&manager=0&uid=${user.uid}">
<font color="blue">设置为普通用户</font></a>
</c:if>
通过访问地址向服务器传递参数0非管理员1管理员
dao层
//更改用户权限
public void updateRole(int manager, int uid) {
QueryRunner qr = new QueryRunner(C3p0Utils.getDataSource());
String sql = "update user set manager=? where uid=?";
Object[] param = {manager,uid};
try {
qr.update(sql, param);
} catch (SQLException e) {
e.printStackTrace();
}
}
service层
public void updateRole(int manager, int uid) {
userDao.updateRole(manager, uid);
}
web层
//更改用户权限
public void updateRole(HttpServletRequest request, HttpServletResponse response) {
String m = request.getParameter("manager");
Integer manager = Integer.valueOf(m);
System.out.println(manager);
String u = request.getParameter("uid");
Integer uid = Integer.valueOf(u);
System.out.println(uid);
UserService userService = new UserServiceImpl();
userService.updateRole(manager, uid);
}
注:dao层和service层均省略了接口
本文详细介绍了如何在前端页面展示所有用户信息,包括姓名、性别、电话号码、地区及用户类型,并实现管理员权限的设置与取消。通过使用c:if标签进行条件渲染,以及在DAO层、Service层和Web层实现数据查询与更新,展示了完整的用户管理流程。
986

被折叠的 条评论
为什么被折叠?



