springboot博客系统

news2024/11/10 13:42:48

基于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.coloradmin.cn/o/2101217.html

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

相关文章

HALCON与LabVIEW的联合编程 视觉与控制结合

HALCON与LabVIEW的联合编程在工业自动化和视觉检测领域中越来越受到重视。通过将HALCON的强大图像处理能力与LabVIEW的灵活控制功能相结合,工程师们可以开发出高效且精确的自动化系统。这种整合不仅提高了系统的整体性能,还简化了开发流程。本文将详细介…

前端DatePicker组件设置默认日期并限制可选日期范围

前言 在前端 element-ui 组件库中有一款组件叫做 DatePicker,是一个灵活选择日期的封装组件,它既能选择单个日期,也能选择一个日期范围(两个日期的组合),后者的应用场景主要有以下两类:1、作为…

妙用市场情绪找出大盘买卖点,逆向交易5年3倍|邢不行

这是邢不行第 118 期量化小讲堂的分享 作者 | 邢不行、密斯锌硒 前言:有这么一个交易品种,它时而是身披圣光的天使,让人一夜间财富暴涨,时而又化身诱人疯狂的恶魔,让人一息间血本无归,我们似乎很了解它&a…

基于plc的变压器冷却系统设计(论文+源码)

1总体方案设计 通过需求分析,本设计基于PLC的变压器冷却系统的整体结构如图2.1所示,系统采用S7-200 PLC为控制器,其结合温度传感器、电压电流传感器、主风机、备用风机等构成整个系统,具有手动和自动两种模式,在手动模…

C++——入门基础(下)

目录 一、引用 (1)引用的概念和定义 (2)引用的特性 (3)引用的使用 (4)const引用 (5)指针和引用的关系 二、inline 三、nullptr 四、写在最后 一、引用…

4.1 数据分析-excel 基本操作

第四节:数据分析-excel 基本操作 课程目标 学会excel 基本操作 课程内容 数据伪造 产生一份招聘数据 import pandas as pd from faker import Faker import random import numpy as np# 创建一个Faker实例,用于生成假数据,指定中文本地…

【Steam游戏星露谷物语添加Mod步骤】

Steam游戏星露谷物语添加Mod步骤 星露谷物语添加拖拉机模组一、安装SMAPI二、正式开始添加MOD 星露谷物语添加拖拉机模组 一、安装SMAPI 星露谷物语添加拖拉机mod为例,添加其它mod一样的步骤。 首先,打开Steam,打开一次星露谷物语这款游戏&…

echarts遍历区域折线图,单线和多线

// 单线折线图drawonelineCharts(){var echarts require("echarts");var lineCharts document.getElementsByClassName(lineChart); // 对应地使用ByClassNamethis.linecolor[#01FFD4,#1C70DD,#01FFD4,#1C70DD,#01FFD4,#1C70DD]for(var i 0;i < lineCharts.len…

2024.9.2

还没写完 #include <iostream> #include <cstring> using namespace std;class myString { private:char *str; //字符串int size; //实际字符长度int len; //字符串容量 public:myString():size(10) //无参构造函数{len siz…

大模型入门 ch01:大模型概述

本文是github上的大模型教程LLMs-from-scratch的学习笔记&#xff0c;教程地址&#xff1a;教程链接 STAGE 1&#xff1a; BUILDING 1. 数据准备与采样 LLM的预测过程&#xff0c;是一个不断预测下一个词&#xff08;准确的说是token&#xff09;的过程&#xff0c;每次根据输…

太狠了:华为的卫星通信能免费使用了

在科技日新月异的今天&#xff0c;手机已不再仅仅是通讯工具&#xff0c;它们正逐步成为我们生活中的全能助手。 而华为&#xff0c;作为科技领域的佼佼者&#xff0c;再次以其创新技术引领了一场卫星通信的革命。 近日&#xff0c;华为正式官宣Pura 70系列首发支持中国移动北…

压缩PDF,介绍这五种压缩方案

压缩PDF&#xff0c;在现代信息社会中&#xff0c;PDF文件已经成为我们日常工作和学习中不可或缺的重要载体。但随着PDF文件内容的增多和复杂化&#xff0c;文件大小的膨胀也成为一个常见问题&#xff0c;给存储、共享和传输带来了不少挑战。今天&#xff0c;我们将详细介绍五种…

美业小程序可以解决哪些行业痛点?美业SaaS收银系统管理系统拓客系统源码

随着移动互联网的快速发展&#xff0c;美业小程序成为了美容美发行业的一大利器&#xff0c;为企业和消费者带来了诸多便利。在当前美业的现状下&#xff0c;美业小程序已经开始解决许多行业痛点&#xff0c;并且在未来将继续发挥重要作用。 ▶美业现状 美业市场规模庞大&…

python-A-B数对

题目描述 给出一串数以及一个数字 C&#xff0c;要求计算出所有 A−BC 的数对的个数&#xff08;不同位置的数字一样的数对算不同的数对&#xff09;。输入 输入共两行。 第一行&#xff0c;两个整数 N,C。 第二行&#xff0c;N 个整数&#xff0c;作为要求处理的那串数。输出 …

review——Linux进程调度与切换

文章目录 目录 前言 1.进程的一些概念 2.进程的优先级 二、进程切换 三、进程调度 总结 前言 在我们的windows电脑上&#xff0c;常常会开启许多不同的软件&#xff0c;我们知道他们会一种和谐的方式存在于我们的电脑上&#xff0c;它们会随着我们的点击而启动&#xff0c;会随…

PMP核心知识点—之项目的整合管理

知识点1&#xff1a;制定项目章程 项目章程是启动过程组的输出。 项目章程主要是&#xff1a;批准项目、给项目经理授权 明确项目与组织战略目标之间的直接联系。 项目章程是由项目发起人编制或者是项目经理和项目发起人共同编制。 项目章程是由项目启动者或者项目发起人发布。…

【unity实战】使用新版输入系统Input System+Rigidbody实现第三人称人物控制器(附项目源码)

最终效果 前言 使用CharacterController实现3d角色控制器&#xff0c;之前已经做过很多了&#xff1a; 【unity小技巧】unity最完美的CharacterController 3d角色控制器&#xff0c;实现移动、跳跃、下蹲、奔跑、上下坡、物理碰撞效果&#xff0c;复制粘贴即用 【unity实战】C…

这些OA办公系统,才是企业高效行政的秘诀

本文将盘点10款OA办公系统&#xff0c;为企业选型提供参考。 大量的文件堆积在办公室&#xff0c;查找困难&#xff0c;浪费时间&#xff1f;文件的借阅和归还流程不规范&#xff0c;文件不知去向&#xff0c;无翼而飞&#xff1f;纸质单据审批周期长、审批过程不透明&#xff…

仕考网:事业单位考试分为哪几种类型?

事业单位招聘考试每年举行一次或两次&#xff0c;全国性的联考通常在每年的5月和10月底至11月初进行&#xff0c;省和市级直属单位的招聘次数则不受限制&#xff0c;各省的具体考试时间由各自安排。 事业单位的考试类型主要分为以下几种&#xff1a;全国事业单位联考、省级事业…

ELK学习笔记(一)——使用K8S部署ElasticSearch8.15.0集群

一、下载镜像 #1、下载官方镜像 docker pull elasticsearch:8.15.0 #2、打新tag docker tag elasticsearch:8.15.0 192.168.9.41:8088/new-erp-common/elasticsearch:8.15.0 #3、推送到私有仓库harbor docker push 192.168.9.41:8088/new-erp-common/elasticsearch:8.15.0二、…