微博需求分析-数据库设计文档
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微博系统详细设计说明书
2012年5月14日
一.系统概述
1.1:构建系统目的(依据需求调研):
微博系统的业务总体目的是建立在一个先进,高效,安全的能被所以和应用于所以微博用户的交流系统。
系统采用B/S架构体系,即采用浏览器访问,服务器端由apache开元发布系统tomcat7.0及mysql数据库服务器组成,开发工具Myeclipse9.0,客户可以由通用的浏览器访问。
1.2:需求文档及规范说明:
依据需求文档来规范美工静态页面制作,设计整体软件系统和数据库搭建。
二.数据库设计
数据库设计兼顾前台后台相互关联调用,设计的表明晰如下:
1.1各表详细说明:
1.1.1前台用户信息表(users):
1.1.2前台用户关系表(relations):
1.1.3微博信息表(weibo):
1.1.4微博评论表(comment):
1.1.5 收藏表(collection)
1.1.6 后台用户表(admins)
1.1.7 权限表 (permissions)
1.1.8权限内容表(percontent)
1.1.9 微博热议内容表(bloghot)
三.前台的HTML静态页面设计
四.微博系统前台功能设计
1.用户信息管理
注册时用户输入自己的基本信息,用户名密码不得为空,登陆时候,输入相应用户名密码,经过验证正确后方可登陆个人信息主页面,进入登陆界面用户可以通过点击个人信息账号进行个人信息设置和修改。
1.1注册用户
静态界面:register.jsp
1.1.1 功能描述:用户注册信息,系统将用户前台页面输入的个人注册信息获取,提交到后台(并不是系统
后台),并且写入数据库。注册的信息包含:邮箱,创建密码(确认密码),昵称,性别,所在地和验证码,输
入规范正确后方可注册微博用户成功。
1.1.2 功能实现:用户前台注册页面输入相应信息,信息验证:对用户输入的邮箱验证、验证两次密码是否一
致、验证验证码是否正确、性别和昵称验证是否填写。系统获取到对应表单信息后,提交到相应
servlet(RegisterServlet.java)中去,并且通过biz(RegisterBizImpl)调用dao(UsersDaoImpl.java)层代码
进行输入mysql数据库中。
1.2用户登录:
静态页面:login.jsp
1.2.1功能描述:用户登录微博主页面,验证:用户名和密码是否输入。
1.2.2功能实现:提交到后台Servlet(LoginServlet),获取前台页面用户输入的用户名和密码内容,提交
到Biz(LoginBizImpl)层,并调用Dao(UsersDaoImpl)层代码和数据库交互来验证用户输入信息是否
正确。
1.3设置个人信息账号(修改个人信息)
静态页面:modify.jsp
修改个人信息截图
修改个人密码:
修改个人头像:
1.3.1功能描述:修改个人信息,包含修改个人简单信息、密码、头像,对两次密码进行判断
1.3.2 功能实现:首先,用户进入此页面后,显示出用户自身全部信息,用户对此信息进行修改,并且把
用户ID以隐藏表单形式显示在页面中,修改密码过程中验证两次密码输入是否一致,修改头像判断用户是否选择了新的头像,进入上传头像操作。用户将自己信息修改后,后台Servlet(ModifyServlet.java)
获取前台用户提交信息,并且将此信息修改提交到Biz(ModifyBizImpl.java)层再调用到
dao(ModifyDaoImpl.java)层实现数据库更新。
2.微博信息管理:
微博信息管理是系统模块中重要的组成部分,主要负责对用户微博信息的管理,包含发送微博,评论微博,转发微博,收藏微博,删除微博,对于微博的模糊查询和微博信息的分
页展示。
2.1 发送微博:
静态页面 mainMicroblog.jsp
2.1.1 功能描述:
进入(个人信息)微博主页面后,在最醒目的位置,左上方显示微博发送控件,输入微博内容后点击发送即可实现微博发送功能,还可以添加图片,进行图片上传功能,将微博写入数据库中。
2.1.2 功能实现:
Servlet(SendMicroblogServlet.java)获取前台页面用户输入要发送微博的内容,并且(从回话中)获取登陆
用户的ID,一起封装到微博(Microblog.java)的实体类中,然后提交到biz(SendMicroblogBizImpl.java)层
并且调用dao(MicroblogDaoImpl.java)层来实现微博信息的(添加)发送。
2.2 评论微博:
2.2.1:功能描述
用户可以通过评论微博功能对自己希望评论的微博进行评论,并且紧随微博显示在微博后面。
2.2.2:功能实现:
Servlet(CommentMicroblogServlet.java)获取到前台用户对相应微博信息的评论内容,同时获取此微博信息的ID,然后封装评论实体(Comment.java)类通过Biz(CommentMicroblogBizImpl.java)层,调用dao(CommentDaoImpl)层代码,实现添加评论信息。
2.3 转发微博:
2.3.1 功能描述:用户根据自己主观喜好的微博信息可进行转发操作,转发后会将此微博信息作为自己的
微博进行显示,同时自己的粉丝也可以看到此微博信息。
2.3.2 功能实现:Servlet(ForWardMicroblogServlet.java)获取到用户想要转发的微博信息ID,然后获取
此微博信息内容,调用Biz(ForWardMicroblogBizImpl.java)层调用dao(MicroblogDaoImpl.java)层代码首先实现要转发的微博转发次数+1,其次作为转发者自己的微博,又要添加一条新的微博信息,要注意新添加的微博信息外键值将由其他的UID值转换为转发者的ID。
2.4 收藏微博:
2.4.1 功能描述:用户可以对所关注的人的微博进行收藏,其作用为不让自己的粉丝看到,和转发的作用正好
相反。
2.4.2 功能实现,在微博浏览页面中,点击收藏后,首先后台Servlet(CollectionMicroblogServlet.java)获
取到用户所要收藏微博的信息(获取收藏微博的ID),通过Biz(CollectionBizImpl.java)层调用Dao层
(CollectionDaoImpl.java)来添加到收藏表中(因此,收藏表肯定要有一个外键对应用户)。
2.5 删除微博:
2.5.1 功能描述:用户可以对自己发表过的微博进行删除,因此会伴随提示”删除微博,会连同相应的评论
删除,是否继续?”,因此新显示的微博信息将不会有此信息。
2.5.2 功能实现:首先Servlet(DeleteMicroblogServlet.java)获得前台页面用户要删除微博的信息(ID),
如果此微博信息和发送者是相同一个人的话,那么次信息执行删除操作,否则提示没有权限删除他人微博。执行删除操作,通过