校园论坛(Java)—— 用户管理系统模块
创始人
2024-03-16 02:09:02
0

校园论坛(Java)—— 用户管理系统模块

文章目录

  • 校园论坛(Java)—— 用户管理系统模块
    • @[toc]
    • 1、写在前面
    • 2、系统结构设计
      • 2.1 各个页面之间的调用关系
      • 2.2. 用户管理系统模块各层的设计
    • 3、管理员管理用户功能
      • 3.1 管理员查看普通用户的所有帖子
      • 3.2 管理员管理所有用户
      • 3.3 管理员删除帖子功能的实现
      • 3.4 管理员删除学习专帖
      • 3.5 管理员注销用户功能
    • 5、项目代码

在这里插入图片描述


1、写在前面

  • Windows版本:Windows10
  • JDK版本:Java8
  • MySQL版本:MySQL5.7
  • Tomcat版本:Tomcat9.0
  • IDE:IntelliJ IDEA Ultimate2020.2.3

2、系统结构设计

2.1 各个页面之间的调用关系

在这里插入图片描述

用户管理系统模块

  • userlist.jsp:所有用户包括管理员自身的用户信息列表
  • userforumlist.jsp:管理员查看用户的普通帖子
  • MdeleteUserForumServlet:管理员删除用户普通帖子
  • MdeleteUserServlet:管理员删除用户
  • deleteUserAck.jsp:管理员删除用户后提示删除成功

2.2. 用户管理系统模块各层的设计

各层的代码已在用户登陆注册模块列出了,此处不再展示

  • Entity层

实体层声明学习专帖的user_id、user_name、user_password、user_sex、user_face、user_phone、user_email、user_from、isAdmin等变量以及对应的set、get方法

  • Dao层

Dao层分别实现一个interface接口类以及一个接口方法实现类

  • service层

实现servlet层调用的方法,对数据库进行增删改查操作。

  • Servlet层

在该层,通过jsp页面传递的参数,service对象调用相应的方法进行操作。

3、管理员管理用户功能

3.1 管理员查看普通用户的所有帖子

在userlist.jsp页面为每一个用户都设置了一个“查看发帖”按钮,通过该按钮可以查看展示的对应用户的所有发帖。该功能是由userforumlist.jsp页面传递的uid(用户ID)参数,再调用seeUserForumList()方法到数据库中进行查询操作实现的。

执行完数据库的逻辑操作之后,将请求转发到page/manager/userforumlist.jsp页面,进而显示所有用户的信息。

如下图所示:

在这里插入图片描述

点击「查看发帖」按钮,可以看到对应的用户所发表的所有普通帖子,进入该页面,通过“删帖”按钮即可实现管理员对帖子的删除权限。

在这里插入图片描述

3.2 管理员管理所有用户

管理员查看所有用户是在userlist.jsp页面实现的,通过MuserListServlet的逻辑实现,并传递的属性参数到该页面,由该页面展示所有的用户。

通过调用findUserList()方法然后请求转发到page/manager/userlist.jsp页面显示内容

代码

public class MUserListServlet extends HttpServlet {@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("UTF-8");UserServiceInf service = new UserServiceImpl();List userList = service.findUserList();req.setAttribute("userList", userList);req.getRequestDispatcher("page/manager/userlist.jsp").forward(req, resp);}
}

如下图所示:

在这里插入图片描述

3.3 管理员删除帖子功能的实现

userforumlist.jsp页面中,对于每一个用户的每一条普通帖子都设置了一个“删帖”按钮用于删除帖子,在此页面获得两个参数uidfid。其中uid是用户ID,fid为要删除的帖子(主帖)的标识符,通过fid先删除该帖子下的所有回帖,最后再删除主帖(该帖子)。

代码

public class MdeleteUserForumServlet extends HttpServlet {@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("UTF-8");String forumid = req.getParameter("fid");int fid = Integer.parseInt(forumid);String uid = req.getParameter("uid");ForumServiceInf service = new ForumServiceImpl();service.deleteReplyByFid(fid);service.deleteForumByFid(fid);req.setAttribute("uid", uid);req.getRequestDispatcher("MSeeUserForumServlet").forward(req, resp);}
}

在这里插入图片描述

3.4 管理员删除学习专帖

普通用户和管理员删除学习专帖的功能实现为同一逻辑和物理操作。

studyReply.jsp页面中,如果当前浏览的学习专帖发表者是当前登录用户或者当前登录用户是管理员身份,则设置有一个「删除本帖」的按钮,在此页面获得两个参数uidsid。其中uid是用户ID,sid为要删除的帖子(主帖)的标识符,通过sid先删除该帖子下的所有回帖,最后再删除主帖(该帖子)。

学习专帖的删除需要判断当前登录用户是否为管理员,如果是,会有「删除本帖」的按钮,否则不会显示此按钮

判断用户代码如下:



通过传递的参数,然后调用findStudyList()方法执行数据库逻辑操作,最后将请求转发到page/manager/deleteStudyList.jsp页面

3.5 管理员注销用户功能

在用户管理模块,管理员可以通过点击“注销”按钮,来注销掉普通用户

如下图所示:

在这里插入图片描述

5、项目代码

  • GitHub
  • Gitee

相关内容

热门资讯

AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AWR报告解读 WORKLOAD REPOSITORY PDB report (PDB snapshots) AW...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
Azure构建流程(Power... 这可能是由于配置错误导致的问题。请检查构建流程任务中的“发布构建制品”步骤,确保正确配置了“Arti...
群晖外网访问终极解决方法:IP... 写在前面的话 受够了群晖的quickconnet的小水管了,急需一个新的解决方法&#x...
AWSECS:哪种网络模式具有... 使用AWS ECS中的awsvpc网络模式来获得最佳性能。awsvpc网络模式允许ECS任务直接在V...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...