springboot博客系统

基于springboot+vue实现的博客系统  (源码+L文+ppt)4-031

图片

4 系统设计  

  

博客系统的整体结构设计主要分为两大部分:管理员和博主。他们的权限不同,于是操作功能也有所不同。整体结构设计如图4-2所示。

图片

图4-2 系统结构图

4.3 数据库设计  

该系统基于MySQL数据库来管理信息,一旦系统运行完毕,所有的数据获取都将直接从数据库执行。这规定了无论是数据的新增、修改还是删除,任何引起数据变动的行为都需与数据库进行沟通。因而,数据库承载着系统的所有数据,必须确保在未得到许可的状态下,数据库不能执行诸如删除表结构之类的高风险操作,并且要保障表格字段的精确性。    

4.3.1 数据库设计原则  

1.从上而下

2.从下至上

3.逐渐扩大

4.结合方法

4.3.2 数据库实体  

实体-关系图(E-R图)是一种概念模型表示手法,它利用图形符号来表示现实世界的实体及其相互关系。通过将实例转化为抽象形式,E-R图能够清晰地描绘出数据库的设计蓝图。在需求分析阶段,绘制E-R图有助于直观地揭示各个数据表之间的关联。

博主的详细信息包括博主账号、博主的昵称、性别、手机号码、电子邮件地址以及头像等元素,这些在E-R图中如图4-3所示。    

图片

图4-3博主E-R图

          

   每日分享包括标题、标签、日期、心情、博主账号、博主昵称、评论数等属性,E-R图如图4-4所示。

图片

图4-4每日分享E-R图

          

博客信息包括博客标题、博客类型、博客来源、发表时间、博客图片、博主账号、博主昵称、点击次数、评论数、收藏数等信息,E-R图如图4-5所示。    

图4-5博客信息E-R图

          

   博主信息包括博主账号、博主昵称、性别、博客类型、关注人数、作品量、浏览量、电子邮箱、社交媒体链、注册时间、头像、点击次数等属性,E-R图如图4-6所示。

图4-6博主信息E-R图

   博客系统总体E-R图如图4-7所示。    

图4-7博客系统E-R图

          

4.3.3 数据库表设计  

数据库的核心功能在于保管和管控系统内的全部数据资源。这些数据需在确保独立性与安全性的基础上,实现一定程度的协作使用,允许在特定条件下对部分信息进行共享。关键在于确保数据库内的各个表格存储的信息受到安全保护,非授权用户无法访问或利用。在构建数据库时,设计过程应依据实际需求,实行定制化的数据库开发与规划。接下来将概述主要的数据库表结构。

表4-1:博客信息评论表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

addtime

timestamp

                  

创建时间

                  

CURRENT_TIMESTAMP

refid        

bigint

                  

关联表id

                  

                  

userid

bigint

                  

用户id

                  

                  

avatarurl

longtext

4294967295

头像

                  

                  

nickname

varchar

200

用户名

                  

                  

content

longtext

4294967295

评论内容

                  

                  

reply

longtext

4294967295

回复内容

                  

                  

表4-2:配置文件

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

name

varchar

100

配置参数名称

                  

                  

value

varchar

100

配置参数值

                  

                  

url

varchar

500

url

                  

                  

表4-3:博主信息

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

addtime

timestamp

                  

创建时间

                  

CURRENT_TIMESTAMP

bozhuzhanghao

varchar

200

博主账号

                  

                  

bozhunicheng

varchar

200

博主昵称

                  

                  

xingbie

varchar

200

性别

                  

                  

bokeleixing        

varchar

200

博客类型

                  

                  

guanzhurenshu

int

                  

关注人数

                  

                  

zuopinliang

int

                  

作品量

                  

                  

liulanliang

int

                  

浏览量

                  

                  

youxiang

varchar

200

电子邮箱

                  

                  

shejiaomeitilianjie

varchar

200

社交媒体链接

                  

                  

zhuceshijian

date

                  

注册时间

                  

                  

gerenjianjie

longtext

4294967295

个人简介

                  

                  

touxiang

longtext

4294967295

头像

                  

                  

thumbsupnum

int

                  

                  

0

crazilynum

int

                  

                  

0

clicktime

datetime

                  

最近点击时间

                  

                  

clicknum

int

                  

点击次数

                  

0

表4-4:博主

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

addtime

timestamp

                  

创建时间

                  

CURRENT_TIMESTAMP

bozhuzhanghao

varchar

200

博主账号

                  

                  

mima

varchar

200

密码

                  

                  

bozhunicheng        

varchar

200

博主昵称

                  

                  

xingbie

varchar

200

性别

                  

                  

shouji

varchar

200

手机

                  

                  

youxiang

varchar

200

邮箱

                  

                  

touxiang

longtext

4294967295

头像

                  

                  

表4-5:博客信息

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

addtime

timestamp

                  

创建时间

                  

CURRENT_TIMESTAMP

bokebiaoti

varchar

200

博客标题

                  

                  

bokeleixing

varchar

200

博客类型

                  

                  

bokelaiyuan

varchar

200

博客来源

                  

                  

bokeneirong

longtext

4294967295

博客内容

                  

                  

fabiaoshijian

date

                  

发表时间

                  

                  

boketupian

longtext

4294967295

博客图片

                  

                  

bozhuzhanghao

varchar

200

博主账号

                  

                  

bozhunicheng

varchar

200

博主昵称

                  

                  

thumbsupnum

int

                  

                  

0

crazilynum

int

                  

                  

0

clicktime        

datetime

                  

最近点击时间

                  

                  

clicknum

int

                  

点击次数

                  

0

discussnum

int

                  

评论数

                  

0

storeupnum

int

                  

收藏数

                  

0

表4-6:博客类型

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

addtime

timestamp

                  

创建时间

                  

CURRENT_TIMESTAMP

bokeleixing

varchar

200

博客类型

                  

                  

表4-7:用户表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

username

varchar

100

用户名

                  

                  

password

varchar

100

密码

                  

                  

image

varchar

200

头像

                  

                  

role

varchar

100

角色

                  

管理员

addtime

timestamp

                  

新增时间

                  

CURRENT_TIMESTAMP

表4-8:token表    

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

userid

bigint

                  

用户id

                  

                  

username

varchar

100

用户名

                  

                  

tablename

varchar

100

表名

                  

                  

role

varchar

100

角色

                  

                  

token

varchar

200

密码

                  

                  

addtime

timestamp

                  

新增时间

                  

CURRENT_TIMESTAMP

expiratedtime

timestamp

                  

过期时间

                  

CURRENT_TIMESTAMP

          

表4-9:收藏表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

addtime

timestamp

                  

创建时间

                  

CURRENT_TIMESTAMP

userid

bigint

                  

用户id

                  

                  

refid

bigint

                  

商品id

                  

                  

tablename

varchar

200

表名

                  

                  

name        

varchar

200

名称

                  

                  

picture

longtext

4294967295

图片

                  

                  

type

varchar

200

类型

                  

1

inteltype

varchar

200

推荐类型

                  

                  

remark

varchar

200

备注

                  

                  

表4-10:每日分享

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

addtime

timestamp

                  

创建时间

                  

CURRENT_TIMESTAMP

biaoti

varchar

200

标题

                  

                  

biaoqian

varchar

200

标签

                  

                  

riqi

date

                  

日期

                  

                  

xinqing

varchar

200

心情

                  

                  

zhengwen

longtext

4294967295

正文

                  

                  

tupian

longtext

4294967295

图片

                  

                  

bozhuzhanghao

varchar

200

博主账号

                  

                  

bozhunicheng

varchar

200

博主昵称

                  

                  

thumbsupnum

int

                  

                  

0

crazilynum

int

                  

                  

0

discussnum        

int

                  

评论数

                  

0

表4-11:每日分享评论表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

                  

主键

主键

                  

addtime

timestamp

                  

创建时间

                  

CURRENT_TIMESTAMP

refid

bigint

                  

关联表id

                  

                  

userid

bigint

                  

用户id

                  

                  

avatarurl

longtext

4294967295

头像

                  

                  

nickname

varchar

200

用户名

                  

                  

content

longtext

4294967295

评论内容

                  

                  

reply

longtext

4294967295

回复内容

                  

                  

                

5界面设计与功能实现  

5.1 前台博主功能模块的实现

当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到博客系统的导航条显示系统首页、博主信息、博客信息、每日分享、个人中心。系统首页界面如图5-1所示:    

图片

图5-1系统首页界面

          

在注册流程中,博主在Vue前端填写必要信息(如用户名、密码等)并提交。前端将这些信息通过HTTP请求发送到Java后端。后端处理这些信息,检查用户名是否唯一,并将新博主数据存入MySQL数据库。完成后,后端向前端发送注册成功的确认,前端随后通知博主完成注册。这个过程实现了新博主的数据收集、验证和存储。如图5-2所示:

图片

    

图5-2博主注册界面图

在登录流程中,博主首先在Vue前端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证博主凭证。如果认证成功,后端会返回给前端,允许博主访问系统。这个过程涵盖了从博主输入到系统验证和响应的全过程。如图5-3所示:

          

图片

图5-3博主登录界面

          

博主点击博主信息,在博主信息页面的搜索栏输入博主昵称,进行搜索,然后查看博主账号、博主昵称、性别、博客类型、关注人数、作品量、浏览量、电子邮箱、社交媒体链接、注册时间、头像、点击次数,还可以点击关注、点赞等操作;如图5-4所示:    

图片

图5-4博主信息页面

          

博主点击博客信息,在博客信息页面的搜索栏输入博客标题,进行搜索,然后查看博客标题、博客类型、博客来源、发表时间、博客图片、博主账号、博主昵称、点击次数、评论数、收藏数等信息;还可以进行点赞、收藏等操作;如图5-5所示:

图片

图5-5博客信息页面

          

在个人中心页面可以输入个人详细信息,进行信息更新操作,还可以对博客信息、每日分享、我的收藏、我的关注、浏览历史进行详细操作,如图5-6所示:    

图片

  图5-6个人中心界面

          

                

5.2 后台管理员功能模块的实现  

管理员打开博客系统后,首先要填写本人的登录信息,后端会搜索数据库信息,若用户名、密码,全部正确会自动跳转到系统功能主页面,否则需要重新输入登录信息,界面如图5-7所示    

图片

图5-7管理员登录界面

          

管理员登录博客系统可以增加、修改或者删除首页、博主、博主信息、博客信息、博客类型、每日分享、轮播图管理、我的信息等。其界面如图5-8所示。

图片

图5-8 管理员功能界面

          

          

在界面展示层(view层),用户可以通过点击“添加”按钮或者填充博主详情表单来触发交互。这些关于博主信息的操作在这一层被记录下来,并转化为指令发送至控制层(controller层)。控制层接收到这些指令后,会调用业务逻辑层(service层)进行处理,例如检查输入数据的正确性以及与数据库的沟通。业务逻辑层完成相关处理后,会与数据访问对象层(DAO层)协作,这个层级专注于具体的数据操作,如查找、新增、修改或删除博主信息,并将这些操作的结果传回给控制层。最后,控制层依据这些结果来更新用户界面的状态,以便博主信息功能可以看到最新的信息或相应的操作反馈。在博主信息页面的输入栏中输入博主账号、博主昵称进行搜索,可以查看到博主详细信息,并根据需要进行修改或者删除等操作;如图5-9所示。    

图片

图5-9博主管理界面图

          

在用户界面的呈现层(view层),用户可以通过互动元素如按下“添加”按钮或填充博主信息表单来触发操作。这些行为在视图层被捕捉,并转化为请求发送至对应的控制层(controller层)。控制器接收到这些请求后,会调用业务逻辑层(service层)进行处理。此层主要负责验证输入信息的正确性以及与数据库的交互。在业务逻辑处理完毕后,它会与数据访问对象层(DAO层)沟通,这个层专门负责博主信息的具体数据库操作,包括查找、新增、修改或删除等。DAO层完成任务后,会将操作结果反馈回控制器,控制器据此更新用户界面的状态,以便博主信息功能可以看到最新的信息或相应的操作反馈。在博主信息页面的输入栏中输入博主昵称、博客类型进行搜索,可以查看到博主详细信息,并根据需要进行修改或者删除等操作;如图5-10所示。    

图片

          

图5-10博主信息管理界面图

          

管理员点击博客信息;在博客信息页面通过对博客标题、博客类型、博客来源、发表时间、博客图片、博主账号、博主昵称、点击次数、评论数、收藏数等信息,进行搜索或删除班级等操作;如图5-11所示。    

图片

图5-11博客信息界面图

          

管理员点击博客类型;在博客类型页面通过对博客类型等信息,进行搜索、增加或删除博客类型等操作;如图5-12所示。

图片

图5-12博客类型界面图

          

管理员点击每日分享;在每日分享页面通过对标题、标签、日期、心情、博主账号、博主昵称、评论数等信息,进行搜索或者删除每日分享等操作;如图5-13所示。    

图片

图5-13每日分享界面图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1522961.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Unity(2022.3.41LTS) - 角色控制器和3D刚体

目录 一. 角色控制 二. 3D刚体 一. 角色控制 名称:功能:坡度限制将碰撞器限制为仅爬升比指示值更陡峭(以度为单位)的斜坡。步长偏移只有当楼梯离地面比指示值更近时,角色才会爬上楼梯。此值不应大于 Character Contr…

《CounTR: Transformer-based Generalised Visual Counting》CVPR2023

摘要 本论文考虑了通用视觉对象计数问题,目标是开发一个计算模型,用于计算任意语义类别的对象数量,使用任意数量的“样本”(即可能为零样本或少样本计数)。作者提出了一个新颖的基于Transformer的架构,称为…

shell 学习笔记:变量、字符串、注释

目录 1. 变量 1.1 定义使用变量 1.2 变量命名规则 1.3 只读变量 1.4 删除变量 1.5 变量类型 1.5.1 字符串变量 1.5.2 整数变量 1.5.3 数组变量 1.5.3.1 整数索引数组 1.5.3.2 关联数组 1.4 环境变量 1.5 特殊变量 2. 字符串 2.1 单引号字符串 2.2 双引…

【32项目】基于stm32f103c8t6WIFI远程监控智慧农业大棚(含完整代码)

目录 前言 设计背景 设计原理 所需材料 JW01二氧化碳传感器介绍 YL-69土壤湿度传感器介绍 PCB及原理图 部分代码(完整代码见文章末尾) 前言 随着农业现代化的发展,智慧农业的概念越来越受到重视。智慧农业利用物联网、大数据、人工智…

计算机网络 数据链路层2

ALOHA:想发就发 CSMA 载波监听多路访问协议 CS:载波监听,在发送数据之前检测总线上是否有其他计算机在发送数据 1-坚持CSMA:主机想发送消息,需要监听信道; 信道空闲则直接传输信息; 信道忙碌则一直监听,直…

【JavaWeb】JDBCDruidTomcat入门使用

本章使用技术版本: Tomcatv10.1.25 关于javaweb相关的其他技术,比如tomcat和maven,在我的主页记录了笔记,ajax我用的是本地笔记以后再考虑上传,前端三板斧我用的菜鸟教程文档 JDBC 初识 JDBC概念 JDBC 就是使用Jav…

【深度学习 transformer】使用pytorch 训练transformer 模型,hugginface 来啦

Hugging Face是一个致力于开源自然语言处理(NLP)和机器学习项目的社区。它由几个关键组件组成: Transformers:这是一个基于PyTorch的库,提供了各种预训练的NLP模型,如BERT、GPT、RoBERTa、DistilBERT等。它…

SEO之网站结构优化(十四-内部链接及权重分配3)

初创企业搭建网站的朋友看1号文章;想学习云计算,怎么入门看2号文章谢谢支持: 1、我给不会敲代码又想搭建网站的人建议 2、“新手上云”能够为你开启探索云世界的第一步 博客:阿幸SEO~探索搜索排名之道 7、锚文字分布及变化 前面…

WebGIS与WebGL是什么,两者之间的关系?

WebGL和 WebGlS 都是 web 技术领域的重要内容,特别是这几年webgis开发领域,和webgl打交道是必然的,常见的WebGL开发的基础上,比如二维的Leaflet、三维的Cesium也都是热门。 WebGL是一种基于 HTML5 Canvas 元素的 JavaScriptAPI&a…

RLHF(带有人类反馈的强化学习)初探

我的目标是,在决策游戏上学习某人风格,可以让人对战“带有某人风格”的AI,比如你可以在这里对战“sky风格的AI”,这样的效果。 我最开始受到的启发来源于xbox的广告《爸爸的幽灵车》,已故人在游戏中留下的速度记录的固定轨迹。 …

IOS17.0安装巨魔:TrollRestore巨魔发布

👻 TrollRestore 17.0 巨魔发布 15.0 - 16.7 RC(20H18)和17.0。 官网:https://trollrestore.com/ 下载:https://pan.metanetdisk.com/IOS/%E5%B7%A8%E9%AD%94%E7%8E%A9%E5%AE%B6/TrollRestore.com 使用:ht…

【数字人】Facevid2vid:用于视频会议的一次性自由视图说话头合成

论文:https://arxiv.org/pdf/2011.15126 github:GitHub - zhanglonghao1992/One-Shot_Free-View_Neural_Talking_Head_Synthesis: Pytorch implementation of paper "One-Shot Free-View Neural Talking-Head Synthesis for Video Conferencing" 一种新颖…

缓存分布式一致性问题

缓存一致性问题发生的原因,是在更新数据时数据库和缓存数据的不一致。我们要做到保证缓存的最终一致性。如果数据需要强一致性建议直接查询数据库。 双写模式 双写模式为先写数据库,在写缓存。 进来两个请求,先执行“请求1”的操作写入数据…

装WebVideoCreator记录

背景,需要在docker容器内配置WebVideoCreator环境,配置npm、node.js https://github.com/Vinlic/WebVideoCreatorWebVideoCreator地址:https://github.com/Vinlic/WebVideoCreator 配置环境,使用这个教程: linux下安…

Spring Boot-自定义banner

在 Spring Boot 应用中,你可以自定义启动时显示的 banner。这些 banner 可以包括图形、文字或者其他形式的标识。如图所示: 1. 使用 banner.txt 文件 默认情况下,Spring Boot 使用项目的 banner.txt 文件中的内容作为启动时的 banner。你可以…

文献阅读:对区域间皮层投射神经元命运多样性的时间控制

文献介绍 文献题目: 对区域间皮层投射神经元命运多样性的时间控制 研究团队: Denis Jabaudon(瑞士日内瓦大学) 发表时间: 2021-11-09 发表期刊: Nature 影响因子: 49.9(2021年&am…

关于电力系统的几个疑问

非电力专业人员对于电力中的某些知识不能够形成系统的认识,接下有空也有补充下这方面知识,吹水时候才有水可以吹,嘻嘻!这里舍不得删掉下边chatgpt这几张图片,暂时先保留着。因为一直有个因为在电网里边用发电端和用电端…

EmguCV学习笔记 C# 9.3 移动检测类

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 EmguCV是一个基于OpenCV的开源免费的跨平台计算机视觉库,它向C#和VB.NET开发者提供了OpenCV库的大部分功能。 教程VB.net版本请访问…

爬取图片保存为pdf

本文章想借着爬虫给大家介绍一下图片转pdf,有需要的友友们可以看看参考参考,有帮助到友友的可以收藏+关注。下面以爬取初中7年级数学上册为例给大家演示一下。网址是这个 https://mp.weixin.qq.com/s?__bizMzAxOTE4NjI1Mw&mid2650214000&idx…

智慧医院是什么?建设智慧医院的关键步骤

智慧医院是什么? 智慧医院是一种新型的医疗机构,它利用先进的信息技术、数据分析和智能化系统,优化医院的管理和服务流程,提高医疗质量和效率。在智慧医院中,所有的运营和管理环节都可以通过数据驱动的方式来实现优化…