新闻推荐系统:Spring Boot与大数据

4系统概要设计

4.1概述

本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:

图4-1系统工作原理图

4.2系统结构

本系统是基于B/S架构的网站系统,设计的管理员功能结构图如下图所示:

图4-2管理员功能结构图

本系统是基于B/S架构的网站系统,设计的用户功能结构图如下图所示:

图4-3 用户功能结构图

4.3.数据库设计

4.3.1数据库实体

概念设计的目标是设计出反映某个组织部门信息需求的数据库系统概念模式,数据库系统的概念模式独立于数据库系统的逻辑结构、独立于数据库管理系统(DBMS)、独立于计算机系统。

概念模式的设计方法是在需求分析的基础上,用概念数据模型(例如E-R模型)表示数据及数据之间的相互联系,设计出反映用户信息需求和处理需求的数据库系统概念模式。概念设计的目标是准确描述应用领域的信息模式,支持用户的各种应用,这样既容易转换为数据库系统逻辑模式,又容易为用户理解。数据库系统概念模式是面向现实世界的数据模型,不能直接用于数据库系统的实现。在此阶段,用户可以参与和评价数据库系统的设计,从而有利于保证数据库系统的设计与用户的需求相吻合。在概念模式的设计中,E-R模型法是最常见的设计方法。本系统的E-R图如下图所示:

(1)新闻信息的实体属性图如下:

图4.12 新闻信息实体属性图

(2)用户实体属性图如图4.13所示:

图4.13 用户实体属性图

(3)管理员类型实体属性图如图4.14所示:

图4.14 管理员类型实体属性图

4.3.2数据库设计表

新闻推荐系统需要后台数据库,下面介绍数据库中的各个表的详细信息:

表4.1 排行榜评论表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

refid bigint(20) 否 关联表id

userid bigint(20) 否 用户id

nickname varchar(200) 是 NULL 用户名

content longtext 否 评论内容

reply longtext 是 NULL 回复内容

表4.2 新闻评论表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

refid bigint(20) 否 关联表id

userid bigint(20) 否 用户id

nickname varchar(200) 是 NULL 用户名

content longtext 否 评论内容

reply longtext 是 NULL 回复内容

表4.3 排行榜

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

biaoti varchar(200) 是 NULL 标题

fabushijian datetime 是 NULL 发布时间

neirong longtext 是 NULL 内容

shipin varchar(200) 是 NULL 视频

faburen varchar(200) 是 NULL 发布人

tupian varchar(200) 是 NULL 图片

thumbsupnum int(11) 是 0 赞

crazilynum int(11) 是 0 踩

clicktime datetime 是 NULL 最近点击时间

clicknum int(11) 是 0 点击次数

表4.4 收藏表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

userid bigint(20) 否 用户id

refid bigint(20) 是 NULL 收藏id

tablename varchar(200) 是 NULL 表名

name varchar(200) 否 收藏名称

picture varchar(200) 否 收藏图片

表4.5 管理员表

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

username varchar(100) 否 用户名

password varchar(100) 否 密码

role varchar(100) 是 管理员 角色

addtime timestamp 否 CURRENT_TIMESTAMP 新增时间

表4.6 新闻

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

biaoti varchar(200) 是 NULL 标题

neirong longtext 是 NULL 内容

shipin varchar(200) 是 NULL 视频

fabushijian datetime 是 NULL 发布时间

faburen varchar(200) 是 NULL 发布人

fengmian varchar(200) 是 NULL 封面

thumbsupnum int(11) 是 0 赞

crazilynum int(11) 是 0 踩

clicktime datetime 是 NULL 最近点击时间

clicknum int(11) 是 0 点击次数

表4.7 用户

字段 类型 空 默认 注释

id (主键) bigint(20) 否 主键

addtime timestamp 否 CURRENT_TIMESTAMP 创建时间

zhanghao varchar(200) 是 NULL 账号

mima varchar(200) 是 NULL 密码

xingming varchar(200) 是 NULL 姓名

xingbie varchar(200) 是 NULL 性别

shouji varchar(200) 是 NULL 手机

touxiang varchar(200) 是 NULL 头像

5系统详细实现

5.1 管理员模块的实现

5.1.1 用户信息管理

新闻推荐系统的系统管理员可以可以对用户信息添加修改删除操作。具体界面的展示如图5.1所示。

图5.1 用户信息管理界面

5.1.2 排行榜管理

系统管理员可以对排行榜进行手动管理,可以对排行榜进行添加删除修改操作。具体界面如图5.2所示。

图5.3 排行榜管理界面

5.1.3 新闻信息管理

系统管理员可以对新闻信息进行添加,修改,删除操作。界面如下图所示:

图5.4 新闻信息管理界面

5.2 用户模块的实现

5.2.1 首页信息

用户登录后,可以在首页查看排行榜推荐,新闻推荐信息。界面如下图所示:

图5.5 首页信息界面

5.2.2 新闻信息

用户登录后,首页点击新闻,可以出现新闻界面,并且有分页显示。界面如下图所示:

图5.6 新闻信息界面

5.2.3 我的收藏

用户登录后可以在个人中心里面的我的收藏查看自己收藏的新闻信息。界面如下图所示:

图5.7 我的收藏界面

相关推荐
雨中飘荡的记忆1 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
开心就好20252 小时前
UniApp开发应用多平台上架全流程:H5小程序iOS和Android
后端·ios
悟空码字3 小时前
告别“屎山代码”:AI 代码整洁器让老项目重获新生
后端·aigc·ai编程
小码哥_常3 小时前
大厂不宠@Transactional,背后藏着啥秘密?
后端
奋斗小强3 小时前
内存危机突围战:从原理辨析到线上实战,彻底搞懂 OOM 与内存泄漏
后端
小码哥_常3 小时前
Spring Boot接口防抖秘籍:告别“手抖”,守护数据一致性
后端
心之语歌3 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
None3213 小时前
【NestJs】基于Redlock装饰器分布式锁设计与实现
后端·node.js
初次攀爬者3 小时前
Kafka + KRaft模式架构基础介绍
后端·kafka
洛森唛4 小时前
Elasticsearch DSL 查询语法大全:从入门到精通
后端·elasticsearch