谈谈设计博客系统的需求分析

前言:因为之前做过一个基于前后端分离的博客系统,架构(前端是Node.js、后端是SpringBoot+mybatis plus+Mariadb+Druid+Tomcat)所以对于其中的难点,以及重点,以及设计方面积累了一些经验,现在分享一下,希望小伙伴尽量别踩坑了。

基本功能:

  首先这个博客系统的基本功能,是一定要有的,你可以参考CSDN的,大致上是,博客的文章类型的分类浏览、博客的推荐、博客标签的处理、浏览、点赞、评论、关注、粉丝、收藏、博客的CRUD,以及归档和分类整理。

难点:

  1、对于博客的浏览量的实现:这里肯定不能设置成同一个用户点进去一次浏览量就加一,再点进去一次再加一的情况。同一个用户,对于一篇博客来说浏览量只能是加一。这个我的实现是这样的,博客的用户浏览量和用户的id进行绑定,每一次用户点进去阅读这篇博客的时候我都会判断这个用户以前是否访问过这篇博客,访问过了,博客浏览量就不会变,没访问过,博客浏览量就加一。
  2、对于文章的点赞以及收藏的实现:这个的要求是如果这个用户点过赞或者收藏过这篇博客,那么,再次进入这篇博客,这篇博客的点赞和收藏就要变颜色。就是状态的改变,这个我的实现是这样的,在后台记录点赞和收藏操作,每次浏览这篇博客时,去判断这个用户是否点赞过或者收藏过,如果点赞过或者收藏过,就设置一个标志返回前台,前台根据这个标志来判断是否变颜色。
  3、对于评论的实现:这个要求是,对于博客的评论是主评论,对于主评论的评论是子评论。这个我的实现是,在后台设置相应的字段标识是否是主评论或者子评论,在前台显示上,根据时间和是否主评论来遍历显示出来。
  4、对于博客的关注,粉丝的实现:这个思路是这样的我关注了别人,那么我就成为了别人的粉丝,那么在前台显示时和点赞以及收藏的思路是一样的,只不过这个对象是博主,点赞和收藏对象是博客。
  5、对于博客的发表:我用的编辑器是markdown,发表时,你要考虑这篇博客的保存为草稿还是发布的,然后进行相应的归档和分类下添加,还有如果分类标签设置了,是否重复,重复就不添加了,不重复就添加。
。。。。。。

比较难解决的问题:

  1、因为是前后端分离开发,图片上传之后,保存在后端服务器上,由于前端是Node服务器,所以拿不到。我的解决办法是,放在项目的路径下。
  2、在markdown进行编辑时图片的问题:如果编辑之前图片存在,编辑之后删了,那么你存放图片的那个地方删除不删除图片,如果删除怎么判断是哪一张图片?留给彩蛋,思考一下哈!

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当涉及到数据库的需求分析设计、视图、存储过程、触发器、事务等方面时,以下是我的一些认识: 1. 数据库需求分析:在设计数据库之前,需要了解用户的需求和业务流程,以便确定数据库的结构和数据存储方式。需求分析是数据库设计的第一步,也是最重要的一步。 2. 数据库设计:数据库设计是根据需求分析结果建立数据库的过程。在设计数据库时,需要确定数据库的表结构、字段、数据类型以及关系等,以及为表之间的关系建立外键约束。 3. 数据库视图:视图是一个虚拟的表,它是从一个或多个表中选择的行和列的子集。视图可以隐藏数据结构的复杂性,简化用户对数据的访问。 4. 存储过程:存储过程是一组预定义好的SQL语句集合,可以像调用函数一样在程序中调用。存储过程可以封装复杂的业务逻辑,提高数据库的性能和安全性。 5. 触发器:触发器是一种特殊的存储过程,它在特定的操作(如插入、更新或删除)发生时自动执行。触发器可以用于实现数据完整性约束、日志记录等功能。 6. 事务:事务是一组操作,它们被视为一个不可分割的单元,要么全部执行成功,要么全部执行失败。事务可以确保数据库操作的一致性和可靠性。 总之,数据库需求分析设计、视图、存储过程、触发器、事务等都是数据库管理的重要方面。了解这些概念对于开发高效、可靠的数据库系统非常重要。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值