基于Java实现吃瓜系统

一、数据库设计

表:总共 10 张表

  • accusation 举报表 包括主键 id 举报瓜 id 举报人 id 创建时间 更新时间
  • administrator 管理员表 主键 id 管理员 id 管理瓜圈 id 创建时间 更新时间
  • collection 收藏表 主键 id 收藏人 id 收藏瓜 id 创建时间 更新时间
  • comment 评论表 主键 id 评论人 id 评论瓜 id 创建时间 更新时间
  • event 瓜表 主键瓜 id 所属瓜圈 id 发布瓜人 Id 瓜名 瓜内容 评论点赞收藏数目 创建时间 更新时间
  • eventgroup 瓜圈表 瓜圈 id 瓜圈名 瓜圈简介 创建时间 更新时间
  • like 点赞表 主键 id 点赞人 id 点赞瓜 id 创建时间 更新时间
  • role 角色表 角色 id 角色名 创建时间 更新时间
  • user 用户表 用户 id 用户名 登录密码 是否记住密码 邮箱 昵称 头像 性别 生日 自我简介 创建时间 更新时间

设计规范

严格按照阿里巴巴规范,不使用外键 而在代码中使用代码逻辑关联表

使用 rbac 角色权限设计模式 通过另外加一个 role 表 用 user_role 表把 user 和对应的 role 挂勾

二、功能介绍

完成所有的基本功能和进阶需求

基本需求

  • 用户可以注册账号、登陆账号
  • 用户可以查询、修改自己的个人信息(如用户名、个人信息等)、修改个人信息
  • 管理员可以创建和删除瓜圈
  • 用户和管理员可以发布事件(瓜),每个事件展示发布者、发布时间、内容
  • 管理员可以删除自己管理的瓜圈内的事件,而用户只能删除自己发布的事件
  • 用户可以评论事件,删除自己的评论
  • 用户可以收藏、取消收藏事件,可以看自己收藏了的合集

进阶需求

  • 使用 JavaFX 或 Swing 来进行图形化界面的展示
  • 使用 Pull Request 合并代码
  • 密码加密、实现记住密码功能
  • 用户可以举报事件,由管理员进行处理
  • 用户可以点赞、取消点赞事件,每个事件展示点赞数
  • 用户查看自己点赞了的合集
  • 事件发布者可以删除事件下所有的评论
  • 事件进行分页展示

图形化界面使用 swing 用 MVC 设计模式进行代码分层 添加 DBCP 数据库连接池,封装 Dao 增删改查代码

三、演示

1.界面设计

欢迎界面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8OGbP2TO-1654496328808)(https://www.writebug.com/myres/static/uploads/2022/6/3/78b41d24d642df3721f4a54a787a83f2.writebug)]

简洁美观 分为登录注册和游客模式

登录界面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wVvZoJXF-1654496328811)(https://www.writebug.com/myres/static/uploads/2022/6/3/b04e1b45b3bfabbb0e64c57f0093457c.writebug)]

输入用户名,检测到上次记住密码的用户会自动填充密码

用户每次都可以选择是否记住密码

登录成功有欢迎信息

重置按钮:清空文本框

取消按钮:返回欢迎界面

注册界面

用户输入想要注册的用户名,程序实时反馈数据库中是否已经有了这个用户名

密码需要 8 位以上英文 + 数字组合 数字 2 位以上 确认密码 实时反馈两次密码是否一致 密码进行加密

重置:清空

取消:返回

瓜网界面

所有的瓜圈信息 分页处理 菜单栏 查询瓜圈入口 点击查询即可直接跳转

瓜圈列表采用双击直接跳转的模式,贴近现实软件

管理员可以创建瓜圈

瓜圈界面

显示当前瓜圈名 瓜圈简介 瓜圈里的所有瓜 分页处理 查询瓜的入口 点击查询直接跳转 在这个界面 用户管理员可以创建当前瓜圈瓜

瓜列表双击实现跳转

返回按钮:返回瓜网

瓜界面

瓜名 作者名 发布时间 点赞收藏评论量 点赞收藏按钮 实现实时反馈到点赞量的增加减少

瓜内容

评论区

评论人 + 评论内容 + 评论时间

评论分页展示 可以选中后 按按钮查看详情

左下角直接放”我要评论的区域” 用户可以直接评论 发送后实时反馈到评论列表 删除评论 列表实时更新 瓜圈管理员可以清空评论

举报按钮跳转到举报界面(只能同时间只能单次举报,待管理员处理后蔡可以重新举报)

返回:返回瓜圈

菜单栏

包括用户状态(退出登录,登录,注册)和个人信息(修改信息,修改密码)和瓜(查询瓜圈,查询瓜 创建瓜(游客不可)创建瓜圈(只有管理员可以)) 和查看合集(点赞合集 收藏合集) 管理员有待处理选项 点击查看所属瓜圈的举报信息

修改信息界面

展示用户信息 用户名 昵称 性别单选按钮 邮箱 生日选择下拉框 个人简介 头像展示 换头像 保存新头像 还原系统默认头像

换头像用文件选择框

邮箱有格式限制

生日信息有日期合法性检测

用户名不可修改,其他都可以修改,每次可以改任意数量的信息

重置:重置回刚进入界面时的信息,重置完需要手动保存重置

返回:返回瓜网

修改密码:跳转到修改密码界面

修改密码界面

旧密码:进行密码验证,验证旧密码是否输入正确

新密码:要求密码符合密码合法格式 密码 MD5 加密

确认密码:实时验证两次密码是否输入一致

返回:返回修改信息界面

菜单栏查询瓜圈界面

菜单栏查询瓜界面

菜单栏创建瓜界面

要求输入瓜所属的瓜圈界面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SfuRcajf-1654496328816)(https://www.writebug.com/myres/static/uploads/2022/6/3/924f726f50738aaaa40fd9a3cabf8224.writebug)]

点赞收藏合集界面

合集采用列表框显示,双击实现跳转

选中可点击收藏/点赞

举报界面

同时段只能举报一次后等待管理员处理

举报处理界面

举报信息采用表格框

处理分为删除瓜(举报有效,直接删除瓜)和静默处理(举报无效,不理会,删除举报信息)

四、整体设计

MVC 设计模式分层

dao po service util view 分层

dao service 包括接口和接口实现类

  • dao 层放数据库相关操作的代码
    一次只操作一张表

  • service 层 业务逻辑处理 封装 view 数据 处理 dao 抛出异常 进行代码连表 进行事务处理

  • po 层对应数据库的实体类

  • util 层包括 日期验证工具类 数据库连接类 JDBC 连接类 分页处理类 图像处理类 密码加密类 验证密码和验证邮箱的 String 类

猜你喜欢

转载自blog.csdn.net/newlw/article/details/125145921
今日推荐