微博需求分析_第1页
微博需求分析_第2页
微博需求分析_第3页
微博需求分析_第4页
微博需求分析_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、微博系统详细设计说明书2012年5月14日系统概述1.1:构建系统目的(依据需求调研):微博系统的业务总体目的是建立在一个先进,高效,安全的能被所以和应用于所以微博用户的交流系统。系统采用B/S架构体系,即采用浏览器访问,服务器端由apache开元发布系统tomcat7.0及mysql数据库服务器组成,开发工具Myeclipse9.0,客户可以由通用的浏览器访问。1.2:需求文档及规范说明:依据需求文档来规范美工静态页面制作,设计整体软件系统和数据库搭建。数据库设计数据库设计兼顾前台后台相互关联调用,设计的表明晰如下:序号逻辑数据库表名物流表名(英文表名)说明1前台用户信息表users管理前台

2、用户基本信息2前台用户关系表Relations管理前台用户之间关系基本信息,例如关注好友3微博信息表Weibo管理前台用户所发送的微博信息4评论表Comments针对微博信息所发送的评论信息管理5收藏表Collections管理用户对自己喜欢的微博信息进行收藏管理6后台用户表Admins管理后台用户基本信息表7后台权限关系表permissions记录对应后台用户所拥有的权限关系表8后台权限内容表percontent记录后台权限所对应内容基本信息表9微博热议表bloghot管理微博前台热议内容基本信息表1.1各表详细说明:1.1.1前台用户信息表(users):序号逻辑字段物理字段类型及长度规则

3、字段说明1用户iduidInteger主键自增长唯一性,自动增长生成用户id号2用户名unameVarchar(20)非空用户姓名3用户密码upwdVarchar(40)非空用户密码4用户昵称unicknameVarchar(20)非空用户昵称5用户性别usexVarchar(10)非空用户性别6用户地址uaddressVarchar(100)可空用户地址7用户生日udatedatetime可空用户生日8用户qquqqVarchar(40)可空用户qq号9用户教育信息ueduVarchar(100)可空用户教育信息10用户头像upicVarchar(50)可空用户头像上传地址路径11用户密码保

4、护问题uquesVarchar(100)可空用户找回密码提供保护问题信息12用户真实姓名urealnameVarchar(100)可空用户真实姓名1.1.2前台用户关系表(relations):序号逻辑字段物理字段类型及长度规则字段说明1关系idridinteger主键唯一性,自增长,关系id号2关系前者(加关注的好友)r_idinteger外键对应users表uid对应users 表3被加关注人g_idinteger外键uid,r_id 加 g_id 好友4关系状态stateInteger非空0单向关注,1为双向关注1.1.3微博信息表(weibo):序号逻辑字段物理字段类型及长度规则字段说

5、明1微博idwidinteger主键唯一性,自增长2微博信息idw_idinteger外键对应users uid表示发送者信息3微博内容wcontentVarchar(100)非空发送微博内容4发送时间wdatedatetime非空发送微博时间5微博图片wimageVarchar(50)可空发送微博附加图片上传路径地址6转发次数wtimesinteger非空默认为0,记录此微博信息转发次数11.4微博评论表(comment):序号逻辑字段物理字段类型及长度规则字段说明1评论idcidinteger主键唯一性,自增长2评论信息idc_widinteger外键对应weibo wid表示此微博所发表

6、的评论3评论内容ccontentVarchar(100)非空发送评论内容4评论时间cdatedatetime非空发送评论时间5评论用户c_uidinteger外键对应users uid表示此评论对应发送者的信息11.5 收藏表(collection)序号逻辑字段物理字段类型及长度规则字段说明1收藏idlidinteger主键唯一性,自增长2用户idl_uidinteger外键对应users uid表示收藏此信息的用户3收藏内容IcontentVarchar(100)非空收藏信息内容4收藏时间ldatedatetime非空收藏信息时间5收藏图片limagesVarchar(50)可空收藏微博图片

7、地址11.6 后台用户表(admins)序号逻辑字段物理字段类型及长度规则字段说明1用户idaidinteger主键唯一性,自增长2权限ida_pidinteger外键对应permissions pid表示此后台用户权限3用户名anameVarchar(50)非空后台用户名4密码apwdVarchar(50)非空后台用户名密码5注册时间adatedatetime非空收藏微博图片地址6真实姓名arealnameVarchar(50)可空后台用户真实姓名7用户性别asexVarchar(10)非空后台用户性别8备注aremarksText可空备注1.17 权限表 (permissions)序号逻辑

8、字段物理字段类型及长度规则字段说明1权限IDpidinteger主键唯一性,自增长,权限ID号2权限姓名pnameVarchar(50)非空权限姓名3权限内容pcontentVarchar(100)非空权限内容说明4权限备注premarksText可空备注L18权限内容表(percontent)序号逻辑字段物理字段类型及长度规则字段说明1权限内容IDpcidinteger主键唯一性,自增长,权限ID号2权限idpc_pidinteger外键对应权限表pid,指一个权限内容针对的权限范 围3权限itemspcitemsVarchar(50)非空权限具体内容细节4权限urlpcurlVarchar

9、(50)可空针对权限所以涉及的路径根节点5备注pcremarksText可空权限内容备注1.1.9 微攵博热议内容表(bloghot)序号逻辑字段物理字段类型及长度规则字段说明1热议IDbidinteger主键唯一性,自增长,权限ID号2热议状态bstateinteger非空热议状态默认0,如果是当前选择内容,则为13热议标题btitleVarchar(50)非空热议标题4热议itemsbitemsVarchar(50)非空热议具体节点内容5热议投票bvoteInteger(50)非空对热议内容投票数量,默认为06热议备注premarksText可空热议备注三前台的HTML静态页面设计微博系统

10、前台功能设计用户信息管理注册时用户输入自己的基本信息,用户名密码不得为空,登陆时候,输入相应用户名密码,经过验证正确后方可登陆个人信息主页面,进入登陆界面用户可以通过点击个人信息账号进行个人信息设置和修改。1.1注册用户register.jsp微营阿詹使用协咬静态界面:戋的邮箱: 划在喟珥: 蛔蝠:朝: 性别.所在地:枝狂有:1.1.1功能描述:用户注册信息,系统将用户前台页面输入的个人注册信息获取,提交到后台(并不是系统 后台),并且写入数据库。注册的信息包含:邮箱,创建密码(确认密码),昵称,性别,所在地和验证码,输 入规范正确后方可注册微博用户成功。1.1.2功能实现:用户前台注册页面输

11、入相应信息,信息验证:对用户输入的邮箱验证、验证两次密码是否一 致、验证验证码是否正确、性别和昵称验证是否填写。系统获取到对应表单信息后,提交到相应 servlet(RegisterServlet.java)中去,并且通过 biz(RegisterBizImpl)调用 dao(UsersDaoImpl.java)层代码 进行输入mysql数据库中。1.2用户登录:静态页面:login.jsp1.2.1功能描述:用户登录微博主页面,验证:用户名和密码是否输入。功能实现:提交到后台Servlet(LoginServlet),获取前台页面用户输入的用户名和密码内容,提交到Biz(LoginBizIm

12、pl)层,并调用Dao(UsersDaoImpl)层代码和数据库交互来验证用户输入信息是否 正确。设置个人信息账号(修改个人信息)静态页面:modify.jsp 修改个人信息截图5蚂:亘克姓名:所在地;tigy:出生日期:QQ:MSN:容宝- m 口 -碾噩修改禳修改修改个人头像:晴圈jpg- gi瞠式,目立件太小不割力M的留片选tl文件1.3.1功能描述:修改个人信息,包含修改个人简单信息、密码、头像,对两次密码进行判断1.3.2功能实现:首先,用户进入此页面后,显示出用户自身全部信息,用户对此信息进行修改,并且把 用户ID以隐藏表单形式显示在页面中,修改密码过程中验证两次密码输入是否一致,

13、修改头像判断用户 是否选择了新的头像,进入上传头像操作。用户将自己信息修改后,后台Servlet(ModifyServlet.java) 获取前台用户提交信息,并且将此信息修改提交到Biz(ModifyBizImpl.java)层再调用到 dao(ModifyDaoImpl.java)层实现数据库更新。微博信息管理:微博信息管理是系统模块中重要的组成部分,主要负责对用户微博信息的管理,包含发 送微博,评论微博,转发微博,收藏微博,删除微博,对于微博的模糊查询和微博信息的分 页展示。2.1发送微博:静态页面 mainMicroblog.jsp2.1.1功能描述:进入(个人信息)微博主页面后,在最

14、醒目的位置,左上方显示微博发送控件,输入微博内容后点击发送即可 实现微博发送功能,还可以添加图片,进行图片上传功能,将微博写入数据库中。2.1.2功能实现:Servlet(SendMicroblogServlet.java)获取前台页面用户输入要发送微博的内容,并且(从回话中)获取登陆 用户的ID,一起封装到微博(Microblog.java)的实体类中,然后提交到biz(SendMicroblogBizImpl.java)层 并且调用dao(MicroblogDaoImpl.java)层来实现微博信息的(添加)发送。2.2评论微博:2.2.1:功能描述用户可以通过评论微博功能对自己希望评论的

15、微博进行评论,并且紧随微博显示在微博后面。2.2.2:功能实现:Servlet(CommentMicroblogServlet.java)获取到前台用户对相应微博信息的评论内容,同时获取此微博信息的ID, 然后封装评论实体(Comment.java)类通过 Biz(CommentMicroblogBizImpl.java)层,调用 dao(CommentDaoImpl)层代码,实现添加评 论信息。2.3转发微博:2.3.1功能描述:用户根据自己主观喜好的微博信息可进行转发操作,转发后会将此微博信息作为自己的 微博进行显示,同时自己的粉丝也可以看到此微博信息。2.3.2功能实现:Servlet(

16、ForWardMicroblogServlet.java)获取到用户想要转发的微博信息ID,然后获取 此微博信息内容,调用Biz(ForWardMicroblogBizImpl.java)层调用dao(MicroblogDaoImpl.java)层代码首先实现要转发的微博转 发次数+1,其次作为转发者自己的微博,又要添加一条新的微博信息,要注意新添加的微博信息外键值将由其他的UID值转换为转 发者的ID。2.4收藏微博:2.4.1功能描述:用户可以对所关注的人的微博进行收藏,其作用为不让自己的粉丝看到,和转发的作用正好 相反。2.4.2功能实现,在微博浏览页面中,点击收藏后,首先后台Servl

17、et(CollectionMicroblogServlet.java)获 取到用户所要收藏微博的信息(获取收藏微博的ID),通过Biz(CollectionBizImpl.java)层调用Dao层 (CollectionDaoImpl.java)来添加到收藏表中(因此,收藏表肯定要有一个外键对应用户)。2.5删除微博:2.5.1功能描述:用户可以对自己发表过的微博进行删除,因此会伴随提示”删除微博,会连同相应的评论 删除,是否继续?”,因此新显示的微博信息将不会有此信息。2.5.2功能实现:首先Servlet(DeleteMicroblogServlet.java)获得前台页面用户要删除微博的

18、信息(ID),如果此微博信息和发送者是相同一个人的话,那么次信息执行删除操作,否则提示没有权限删除他人微博。执行删除操作,通过Biz(MircoblogBizImpl)层调用Dao(MircoblogDaoImpl)层执行微博表相应记录删除。2.6微博模糊查询:2.6.1功能描述:用户要搜寻相应微博信息,可以进行模糊查询。用户可以在模糊查询表单内搜索相应信息点 击查询即可查出相应微博,但是如果没有相应信息则提示”没有搜索到相应微博信息”。2.6.2功能实现:首先在Servlet(MicroblogFuzzyFindServlet.java)中获取模糊查询表单内容,通过 Biz(Mircoblo

19、gBizImpl)层调用 Dao(MircoblogDaoImpl)层来查找相应信息,返回 ArrayList 集合信息。2.7微博信息分页显示:2.7.1功能描述,所以登陆者的微博和其关注人的微博信息都要在个人主页内分页显示,然后用户点击”上 一页”或者”下一页”进行分页查找微博信息。2.7.2功能实现:首先作为面向对象编程思想,要建立起一个相应的分页类PageBean.java(包含的变量:总记 录数count(*),总页数,每页多少条记录,当前第几页,数据信息的结合List),按照PageBean的思路来搜索数据库用户想要的相 应页数。好友信息管理FriendsManager对好友管理是

20、微博系统中一个非常重要的模块,通过对好友管理,用户可以完成添加关注操作,取消关注, 互为好友,搜寻好友,等功能。对自己感兴趣的人进行好友操作,从而时刻关注好友的微博信息更新。添加关注 AddAttention3.1.1功能描述:登陆的用户可以对没有加为关注的人进行添加关注操作,若被添加者在操作前与该登陆者无 关注和被关注的关系,则二人关系为关注关系,既为单向关注关系。3.1.2功能实现:用户点击了还没有关注的陌生人的关注后,首先后台Servlet(AddAttentionServlet.java) 获取到要关注人的信息(ID),通过Biz(AttentionBizImpl)层判断调用Dao(A

21、ttentionDaoImpl)层来判断此用户 是否是已经关注我的好友,如果没有此用户关注登陆者的信息,那么添加关注表,作为登陆者关注人的信息。 反之,状态字段应相应改变,标志此用户和登陆者为互为关注关系。互为好友 EachOtherFirends3.2.1功能描述:衔接上一功能说明,登陆者还可以添加自己的粉丝好友作为自己关注的人。3.2.2功能实现,同样衔接上一功能说明,如果添加关注时候判断其好友已经是自己粉丝,那么状态关系表中 状态字段应有所改变,状态为互为好友。3.3搜寻好友(换一换)FindFirends3.3.1功能描述:用户在自己的主页内同时要显示出自己还没有关注人的信息,同样可以

22、通过换一换搜索还没 关注人的陌生人信息。3.3.2功能实现:很类似与分页显示微博信息,应用到PageBean功能,但是不同与分页显示的是分页显示是 用户决定要看哪一页信息,换一换是由java随机数来决定显示哪一页陌生人信息。也就是通过java随机数来产生要显示的每 一页信息。相应Servlet(FindFirendsServlet.java)生成java随机数来通过PageBean获取随机的页的陌生人信息。取消关注 DeleteAttention3.4.1功能描述;用户还可以对已经加过的好友进行取消关注操作。静态页面:用户在除了登陆后的个人主页 内还可以选择菜单进行进入我的好友管理静态页面,显

23、示的所以好友,关注的好友信息,可以点击相应的取消关注操作。3.4.2功能实现:首先Servlet(DeleteAttentionServlet.java)获取到所要取消关注人的信息(ID),思路和添 加好友,互为关注的思路正好相反,通过Biz(AttentionBizImpl.java)层调用Dao(AttentionDaoImpl.java)层,首先判断此用 户是单向关注还是双向互为好友,如果是前者删除关系表中相应记录,如果是后者,不但要删除相应关系记录,还要修改关系 表中状态字段值。自动登录:AutoLogin3.5.1功能描述:如果用户在已经登录的状态下,推出浏览器,或者直接关机,当再次

24、登录到首页时候,则显 示该用户自动登录。3.5.2功能实现:首先在用户登录表单内,有一个选择自动登录的复选框,如果用户登录时勾上此复选框,则 发送到Servlet(AutoLoginServlet.java)来执行Cookie回话机制,从而实现自动登录页面。如果用户推出系统后,那么用户在此登录时就不应该现在自动登录,因为此用户不希望自动登录此系统。3.6微博热议投票系统:Vote3.6.1功能描述:此模块是含有娱乐性质,后台管理中首先发送微博热议内容选项,然后用户可以根据自身喜 好不同来对其相应投票,然后查看投票结果,用漂亮的彩色柱形图显示。3.6.2功能实现;Servlet(VoteServ

25、let.java)获取到用户喜好的投票内容,然后首先通过biz(VoteBizImpl.java) 层调用dao(VoteDaoImpl.java)层来实现修改数据库相应自动的投票数量,然后通过应用Jfreechart技术来实现页面效果很 漂亮的彩色柱形图,来显示到页面中。找回密码:RetrievePassword3.7.1功能描述:如果用户忘记自己密码,跳转到密码找回页面RetrievePassword.jsp,用户输入用户名,和 其他信息,核对信息正确无误后,系统会自动把该用户密码发送到该用户注册邮箱内。3.7.2功能实现:首先跳转到RetrievePassword.jsp密码找回页面中,

26、Servlet首先判断此用户输入的验证信 息是否正确,如果正确无误,则用javaMail功能来实现把该用户密码发送到该用户注册邮箱内。验证码功能:VerificationCode3.8.1功能描述:用户在登陆过程中,需要输入验证码,验证码可以动态改变,用户输入正确的验证码后方可 登陆微博主页。3.8.2功能实现:两种方法一是通过javascript页面脚本语言实现二是通过Servlet动态随机生成数来显示到页面验证码内。微博系统后台功能设计后台管理不是针对发送微博的前台用户,而是针对后台管理员管理而设定的。因此它可以管理前台的信 息内容。后台登陆:BaskstageLogin1.1.1功能描述

27、:后台的登陆有别于前台,首先是分权限管理的,首先分两个权限管理,一是管理员,就是 能看到全部功能;二是普通后台用户,权限:前台用户管理、微博管理、好友关注度比较、微博热议内容、收 藏管理。1.1.2功能实现:首先不同权限的用户登录后现在的后台内容是不同的,首先后台登录管理涉及到的后台用 户注册管理,后台用户注册要选择不同的角色来进行注册,区分管理员还是普通后台用户,通过数据库对不同 用户的角色权限的定义,以创建权限表来区分,登陆时后台Servlet(BaskstageLoginServlet.java)通过 biz(BaskstageBizImpl.java)调用dao(BaskstageDa

28、olmpl.java)层判断其角色权限,从而显示相应不同的管理 信息页面。前台用户管理 FrontUsersManager1.2.1功能描述:在显示前台用户管理页面中FrontUsersManager.jsp中,罗列分页显示前台所以用户信息, 从而可以对其做修改,删除,模糊查找操作。功能实现:Servlet(FrontUsersManagerServlet.java)通过 biz(FrontUsersManagertBizImpl.java)层 调用dao(FrontUsersManagerDaoImpl.java)层来分页搜索显示前台用户信息,后台用户管理(管理员角色操作) Backstag

29、eUsersManager1.3.1功能描述:首先此功能是后台管理员角色操作。BackstageUsersManager.jsp在此页面中,罗列分页 显示后台所有用户信息,管理员可以针对其修改操作,修改,删除,模糊查找功能Servlet(Backstage UsersManagerServlet.java)通过 biz(BackstageUsersManagertBizImpl.java)层调用 dao(BackstageUsersManagerDaoImpl.java)层来显示。后台注册:BackstageRegistration1.4.1功能描述:此功能是管理员角色操作。针对后台登陆功能,

30、在后台用户注册时要区别前台用户,重要多 的内容是选择用户角色以区分不同的权限。1.4.2功能实现:首先在BackstageRegistration.jsp页面中实现后台用户注册,Servlet(BackstageRegistration Servlet.java)通过 biz(BackstageRegistrationBizImpl.java)层调用dao(BackstageRegistrationDaoImpl.java)层提交数据库微博管理:MicroblogManager1.5.1功能描述:MicroblogManager.jsp页面中显示前台所有用户发送的微博信息,并显示该信息发送的用 户,可以对此进行删除,修改,模糊查找功能。功能实现:Servlet(MicroblogManagerServlet.java

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论