1、 PINGDINGSHAN UNIVERSITY软 件 学 院专业实训六项目报告书项目名称: 基于SSH框架的微博系统 年级专业: 2023级 软件工程 小组成员: * 微博系统的设计与开发第一章系统概述11.1项目开发的背景和意义11.1.1项目开发背景11.1.2项目开发意义11.2系统体系结构21.2.1 B/S体系结构2第二章需求分析32.1 可行性分析32.2 系统分析的任务与环节42.2.1 系统分析的任务42.2.2系统分析的环节42.3微博项目范围52.4 功能需求分析52.4.1基本功能规定52.4.2用户分析62.4.3 微博实体分析62.4.4 性能描述62.4.5系统的
2、用例图设计62.4.6系统的数据流图162.4.6 系统数据字典17第三章总体设计193.1 总体设计的任务193.2 功能模块203.2.1 系统功能模块描述203.3 数据库设计213.3.1 概念结构设计213.3.2 逻辑结构设计233.3.3 物理设计24第四章具体设计264.1 系统整体功能流程264.2 系统子功能264.2.1登录模块264.2.2评论模块274.2.3发表微博模块274.2.4查看/修改个人信息模块28第五章编码实现285.1系统页面模版设计285.1.1模版实现界面285.2用户模块295.2.1 用户模块功能实现描述295.2.2 用户功能实现界面30结束
3、语32参考文献33第一章 系统概述1.1 项目开发的背景和意义1.1.1项目开发背景微博即微博客(microblog)的简称,由博客(blog)发展而来,最早也是目前最大的微博是美国的Twitter,中国最早开始微博业务的是门户网站新浪网。主流微博介绍:新浪微博是一个由新浪网推出,提供微型博客服务的类Twitter网站。用户可以通过网页、WAP页面、手机短信/彩信发布消息或上传图片。新浪可以把微博理解为“微型博客”或者“一句话博客”。发布功能:用户可以像博客、聊天工具同样发布内容界面。转发功能:用户可以把自己喜欢的内容一键转发到自己的微博(转发功能是对twitter RT功能的改良,保存原帖,
4、避免在传播过程中被篡改)转发时还可以加上自己的评论。转发后所有关注自己的用户(也就是自己的粉丝),能看见这条微博,他们也可以选择再转发,加入自己的评论,如此无限循环,信息就实现了传播。 关注功能:用户可以对自己喜欢的用户进行关注,成为这个用户的关注者(即“粉丝”),那么该用户的所有更新内容就会同步出现在自己的微博首页上。关注的上限是。 评论功能:用户可以对任何一条微博进行评论。(这是基于中国用户习惯而设立的特殊功能,之后Yahoo Meme 和Google Buzz也都有了评论功能) 私信功能:用户可以点击私信,给微博上任意的一个开放了私信端口的用户发送私信,这条私信将只被对方看到。实现私密的
5、交流。1.1.2项目开发意义现在微博成为大家共同的话题,当人们看到自己觉得美好的东西和事物,就会发到微博上去分享给大家。许多大型网站也在本来博客的基础上,增长了微博,微博以其短小精悍,更加贴近生活而受到人们的推崇。 1、发布简便:用户登录以后可以通过编辑微博的方式进行发布微博,发布以后自己的好友就能看到看到微博的内容,让好友可以关注你的实时动态。2、私信功能:假如某一用户想给另一用户进行互动,但是又不行让其别人看到他们的互动内容,这时用户就可以通过私信功能将自己想要表达的内容发送给另一用户,当另一用户登录微博以后,系统就会提醒有用户给自己发了私信,这时用户就可以回复私信,从而达成互相沟通的目的
6、。当今社会是个高科技、高效率、高度竞争的社会。随着物质水平的逐步提高,我们的的精神生活也开始趋向丰富多彩。一种新的网络应用形式 “微博”也应运而生。“微博”以其便捷性,背对脸式的交互方式以及原创性得到了广大网民的溺爱,成为了网络时代新的代名词。项目开发环境1、硬件环境建议配置:处 理 器:1.2GHz以上内存容量:512M以上硬盘容量:16GB以上2、软件环境操作系统:windows 2023/XP/Vista开发软件:MyEclipse;Web服务器:Tomcat; 数 据 库:MySQL;1.2 系统体系结构1.2.1 B/S体系结构 本系统所面向的对象是广大的互连网用户。因此,将要采用比
7、较流行的B/S三层结构。如图1.1所示:图1.1 B/S三层结构图B/S体系结构与C/S体系结构相比不仅具有其所有的优点,并且又有C/S体系结构所不具有的独特优势:(1)开放的标准:B/S所采用的标准都是开放的、非专用的,是通过标准化组织所拟定而非单一厂商所制定,保证了其应用的通用性和跨平台性。(2)较低的开发和维护成本:B/S的应用只需在客户端安装通用的浏览器即可,维护和升级工作都在服务器端进行,不需对客户端进行任何改变,故而大大减少了开发和维护的成本。(3)用户使用简朴,界面和谐:B/S用户的界面都在统一的浏览器上,浏览器易于使用、界面和谐,又由于它不再负责数据的存取和复杂数据计算等任务,
8、只需要进行显示,因而大大减少了对客户端的规定。从以上的分析与比较可以看出,B/S模式具有C/S模式无法替代的优越性:它简化了系统的开发和维护,并且特别合用于网上信息发布。因此,我们小组开发的微博项目就是采用了基于B/S模式的体系结构。第二章 需求分析2.1 可行性分析本系统对数字化信息资源的组织采用数据库。系统的数据库结构是关系数据库MySQL,前台使用JSP平台开发。信息平台的后台操作采用B/S操作结构以增强系统的安全保密性、系统稳定性和易操作性。JSP是目前最完备的面向对象语言,在未来仍然很有发展前程。MySQL采用了关系型数据库结构,是一套精简、快速的数据库管理系统,它提供了多人使用的管
9、理模式,并支持标准的SQL语法。1、技术可行性大学课程中的数据库系统概论,JavaWeb知识,计算机网络基础JAVA语言与面向对象程序设计等多门课程为整个课题开发提供了坚实的基础。JSP是一种相对简朴的语言,MySQL也是一种简朴的数据库,所以技术难度并不高。微博最为一个典型的web应用,所面临的技术挑战在前面的分析中已经找到。对于这样的挑战,尚有好的平台出现,可以很好的解决这一问题。数据库采用小巧,高效的Microsoft Office Access数据库,使得系统的影响时候更短,整个系统的运营效率可以发挥到极致。2、操作可行性操作可行性重要是指在系统的开发过程中能否很好的把握住开发的合理进
10、度,能否科学的分派资源和时间,能否保持系统开发的连贯性,使之在管理层面上能有条不紊的进行。我们小组在开发系统之前做好充足的准备、制定好应有的计划,在开发过程中根据实际情况合乎时宜不断进行调整,在操作这一层面上,系统的开发是完全可行的。通过上面的分析,我们可以得到:在有良好的技术为依托的、操作上有所支持的前提下,此系统的开发具有投入少、周期短、见效快、易控制的特点,此系统的开发时完全可行的。2.2 系统分析的任务与环节2.2.1 系统分析的任务了解用户规定。此用户即为网站的使用人员(注册用户)。了解他们在网站功能、性能等方面的规定及用户在硬件配置、开发周期解决方式等方面的意向与打算。把用户规定成
11、文,完毕网站分析报告。网站的逻辑模型由一系列的图表和文字组成。在逻辑上描述了系统的目的和所具有的功能于性能。2.2.2系统分析的环节l 描述网站。在具体调查的基础上,用一定的图标、文字描述;l 分析用户新的规定,改善现行模型,形成新系统的逻辑模型。l 编写系统分析说明书。2.3微博项目范围微博从三种角度进行功能划分。1、 注册用户部分:填写个人信息涉及用户名,登陆密码,性别,个人标签,上传图 片。 2、 成功登录部分:用户可以发表个人微博 关注好友 收藏好友微博 评论好友微博 发私信 查看/修改个人信息3、 后台管理:重要对已成为该系统的用户进行管理。可以注销某些违法用户。2.4 功能需求分析
12、2.4.1基本功能规定系统重要提供的功能涉及以下几方面:(1) 用户可以注册,登录系统(2) 用户可以发表个人微博,可以删除个人微博。(3) 用户能加关注好友,可以取消关注(4) 用户可以评论好友微博(5) 用户可以收藏好友的微博(6) 用户可以查看个人主页并进行个人信息更新(7) 用户登陆后能及时收到关注的好友的微博(8) 发私信2.4.2用户分析本微博系统重要涉及一下几类用户:一、注册用户部分 1:用户注册。2:发表个人微博,也可以收藏好友微博,评论好友微博。3:关注好友。 4:可以对自己感爱好的微博用户发私信。5:查看/修改 个人信息。二、后台管理重要对已成为该系统的用户进行管理。可以注
13、销某些违法用户2.4.3 微博实体分析微博是一个基于用户关系的信息分享、传播以及获取平台,用户可以通过WEB、WAP以及各种客户端组件个人社区,文字更新信息,并实现即时分享。2.4.4 性能描述 系统具有特点如下:1、 数据精确度:规定保证能及时正保证存相关信息,可以查询到所要查询的相 关信息并保证其对的率。2、 时间特性:规定保证一般操作的响应时间应在12秒内。3、 适应性:规定满足运营环境在允许操作系统之间的安全转换和与其它应用软件的独立运营规定,与一般软件没冲突情况。2.4.5系统的用例图设计1、用户用例2、用例图设计编号需求参与者用例1在使用(管理)weibo之前,用户登录用户登录微博
14、2没有账号的用户,通过注册得到账号用户注册微博账号3用户登录成功后之后,来到微博主页,可以在文本框中输入限定字数的文字并发布用户 发表个人微博4点击”个人主页”超链接,来到个人信息页面用户查看个人信息5来到个人信息页面之后,可以点击”编辑”超链接 更新个人信息用户编辑个人信息6登录用户可以在微博列表中删除自己的微博用户删除个人微博7用户在关注好友的前提下,每次登录微博来到微博主页时,假如好友有新微博都能看到用户查看好友微博8用户在查看好友微博时 可以点击收藏按钮收藏好友微博用户收藏好友微博9用户在查看好友微博时可以点击评论按钮来到评论页面评论好友微博用户评论好友微博10登录用户可以在 微博主页
15、 点击 粉丝 超链接查看粉丝列表用户查看粉丝11用户可以在微博主页点击寻找微友超链接 来到查询页面 用户可以按条件查询自己想找的微博用户用户寻找微博用户12用户在点击寻找微博用户超链接后来到微博用户页面可以选择关注自己喜欢的的微博用户用户关注微博用户13登录用户可以在 微博主页 点击 已关注的微友 超链接查看关注的微友列表用户查看已关注的微友14用户在查看已关注的微友列表时可以取消对微友的关注用户取消好友关注15用户在查看已关注的微友列表时选择好友可以点击发私信超链接给好友发私信用户发私信16登录用户可以在 微博主页 点击 微博收藏 超链接查看自己收藏的微博用户查看收藏的微博17当用户点击 微
16、博收藏 来到收藏列表时 可以选择取消微博收藏用户取消微博收藏18登录用户可以在 微博主页 点击 个人微博 超链接查看自己发布的所有微博用户查看个人微博19登录用户可以在 微博主页 点击 评论 超链接查看有关自己的评论信息用户查看微博评论20登录用户可以在 微博主页 点击 私信 超链接查看有关自己的私信记录用户查看私信记录21来到个人信息页面之后,可以点击”添加个人标签”超链接来添加个人标签信息用户添加个人标签22来到个人信息页面之后,可以点击”上传图片”超链接来添加个人图片用户上传图片3、用例具体设计1. 用户注册Use Case名称:注册微博账号目的:注册后得到账号,才可登录参与者:用户前置
17、条件:无后置条件:跳转到用户登录页面 提醒注册成功 欢迎登录用户动作系统响应1系统显示注册界面2用户按表单填入内容,提交3系统检查表单,通过数据库进行用户注册4注册成功后,返回登录界面提醒用户登录5用户点击返回重新登录替代或例外程序:3.a用户未输入完整,请用户继续输入3.b用户两次密码输入不一致,请用户重新输入2. 登录微博Use Case名称:登录微博目的:登录参与者:用户前置条件:用户名已存在后置条件:保存用户信息,转发主界面用户动作系统响应1系统显示登陆界面2填写表单3通过数据库验证表单4验证成功后,保存用户信息,转发主页面替代或例外程序:2.a用户未填写完表单,请用户继续填写3.a表
18、单验证失败,返回登录界面和错误信息3. 发表个人微博Use Case名称:发表个人微博目的:成功登录后 用户可以发布一定字数限制的想说的话参与者:用户前置条件:用户已成功登录系统后置条件:微博主页显示用户已发表的微博内容 用户动作系统响应用户在文本框填入内容,发布1如何不超过限制,则将用户发布的微博信息写入数据库2微博主页显示用户已发表的微博内容替代或例外程序:3.a系统检查字数限制,若多于限制则提醒用户已超过字数限定,发布失败3.b若发布内容为空,提醒用户重新输入发布4. 删除个人微博Use Case名称:删除个人微博目的:成功登录后 用户可以删除自己已经发布的微博参与者:用户前置条件:用户
19、已成功登录系统且选择了已经发布的微博后置条件:更新微博首页或更新个人主页的微博页面用户动作系统响应用户选择已经发布的某条微博点击删除超链接1系统将根据删除微博的ID查找数据库删除相应的微博 2更新微博首页或个人主页的微博页面微博已被删除,页面并未及时更新,用户再删除时提醒微博已删除 5. 查看个人微博Use Case名称:查看个人微博目的:成功登录后 用户可以查看自己已经发布的所有微博参与者:用户前置条件:用户已成功登录系统后置条件:来到个人主页页面用户动作系统响应用户登录系统后点击微博首页的“个人主页”超链接 来到个人主页页面 1系统根据点击的超链接跳转到个人主页页面6. 查看好友微博Use
20、 Case名称:查看好友微博目的:成功登录系统后 用户可以查看自己已经关注的好友的最新微博参与者:用户前置条件:用户已成功登录系统并且用户已经关注了好友后置条件:登录系统成功来到微博首页显示关注好友的微博用户动作系统响应用户在登录页面填写用户名和密码登录系统1.成功登录系统,来到微博首页显示好友微博用户名或密码错误提醒用户重新输入登录7. 收藏好友微博Use Case名称:收藏好友微博目的:成功登录系统后 用户可以收藏自己喜欢的的好友的微博参与者:用户前置条件:用户已成功登录系统并且用户选择查看了某条好友微博后置条件:提醒用户收藏微博成功用户动作系统响应用户在查看某条好友微博时,点击“收藏”超
21、链接1.系统根据选择收藏微博ID,将此微博信息写入数据库的用户微博收藏表中8. 评论好友微博Use Case名称:评论好友微博目的:成功登录系统后 用户可以评论好友的微博参与者:用户前置条件:用户已成功登录系统并且用户选择查看了某条好友微博后置条件:提醒用户评论微博成功用户动作系统响应点击“评论”超链接,来到微博评论页面,用户填写评论信息点击提交后提醒评论成功 9. 查看个人信息Use Case名称:查看个人信息目的:成功登录系统后 用户可以在个人主页查看个人的基本信息参与者:用户前置条件:用户已成功登录系统来到个人主页后置条件:显示用户基本信息用户动作系统响应用户已成功登录系统来到个人主页,
22、点击“个人资料”超链接1.系统根据请求跳转到用户基本信息页面,显示用户基本信息10. 编辑个人信息Use Case名称:编辑个人信息目的: 用户可以在个人主页查看个人的基本信息时可以修改个人信息参与者:用户前置条件:用户已成功登录系统来到个人主页的个人信息页面后置条件:显示用户编辑成功用户动作系统响应用户已成功登录系统来到个人主页的个人信息页面,点击“编辑”超链接,来到个人信息编辑的页面,当用户编辑完毕后,点击提交。1.系统根据页面请求将用户编辑后的个人信息更新到数据库的用户信息表中。 2.然后跳转到用户个人信息页面显示用户更新后的基本信息用户编辑完个人基本信息后可以选择取消 则跳转到用户基本
23、信息页面11. 查看收藏的微博Use Case名称:查看收藏的微博目的: 用户可以查看自己收藏的微博参与者:用户前置条件:用户已成功登录系统来到微博首页后置条件:显示用户收藏的微博用户动作系统响应用户已成功登录系统来到微博首页时,点击“收藏”超链接。1.系统根据页面请求,跳转到用户微博收藏页面显示收藏的微博列表。 12. 取消微博收藏Use Case名称:取消微博收藏目的: 用户在查看自己收藏的微博时 可以选择取消收藏参与者:用户前置条件:用户已成功登录系统来到微博首页后置条件:显示取消后用户收藏的所有微博用户动作系统响应用户在查看自己收藏的微博时,点击“取消收藏”超链接。1. 系统根据微博I
24、D,查找用户收藏表,删除收藏的微博ID记录项。 13. 寻找微博用户Use Case名称:寻找微博用户目的: 用户登录微博后,可以按条件查找自己喜欢的微博用户参与者:用户前置条件:用户已成功登录系统来到微博首页后置条件:显示微博用户列表用户动作系统响应用户在微博首页,点击“寻找好友”超链接后,用户在微博用户查找页面,选择并输入查询条件,点击查询1.系统根据页面请求,跳转到微博用户查找页面,2.系统根据用户查询的条件,显示相应的微博用户列表14. 关注微博用户Use Case名称:关注微博用户目的: 用户登录微博后,可以选择关注喜欢的微博用户参与者:用户前置条件:用户已统按条件查看了自己喜欢的微
25、博用户后置条件:显示微博用户列表用户动作系统响应用户在查看的微博用户列表中,选择某微博用户 点击“关注”超链接1.系统根据关注的微博用户ID,查找数据表,更新用户表的好友数量和被关注用户表的粉丝数量2. 查找好友关系表,插入好友关系项假如 用户A 已关注用户B 当A再次关注B时 则提醒已经关注15. 查看微粉Use Case名称:查看微粉目的: 用户登录微博后,可以查看关注自己的微博用户参与者:用户前置条件:用户成功登录系统后置条件:显示微粉列表用户动作系统响应用户在微博主页中, 点击“粉丝”超链接1.系统根据用户请求,查找数据表,显示用户的粉丝列表。16. 查看已关注的微友Use Case名
26、称: 查看已关注的微友目的: 用户登录微博后,可以查看自己关注的微博用户参与者:用户前置条件:用户成功登录系统后置条件:显示关注的用户列表用户动作系统响应用户在微博主页中, 点击“关注”超链接1.系统根据用户请求,查找数据表,显示用户的关注微博用户列表。17. 取消好友关注Use Case名称:取消好友关注目的: 用户在查看关注的好友列表时,可以选择取消对关注的微博用户的关注参与者:用户前置条件:用户查看了自己关注的微博用户后置条件:显示取消后的关注微博用户列表用户动作系统响应用户在查看关注的微博好友列表中,选择某微博用户 点击“取消关注”超链接1.系统根据关注的微博用户ID,查找数据表,更新
27、用户表的好友数量和被关注用户表的粉丝数量2. 查找好友关系表,修改好友关系项假如 用户A 已取消关注用户B 当A再次取消关注B时 则提醒已经取消关注18. 发私信Use Case名称:发私信目的: 用户在查看关注的好友列表时,可以选择对关注的微博用户发私信参与者:用户前置条件:用户查看了自己关注的微博用户后置条件:用户动作系统响应用户在查看关注的微博好友列表中,选择某微博用户 点击“发私信”超链接,在发私信页面,用户发表私信内容点击提交。1.系统响应用户请求,将私信记录写到数据库私信登记表中19. 查看微博评论Use Case名称:查看微博评论目的: 用户登录微博后,可以查看和自己相关的微博评
28、论参与者:用户前置条件:用户成功登录系统后置条件:显示评论信息用户动作系统响应用户在微博主页中, 点击“评论”超链接1.系统根据用户请求,查找数据表,显示用户的评论信息列表。20. 查看私信记录Use Case名称:查看私信记录目的: 用户登录微博后,可以查看和自己相关的私信记录参与者:用户前置条件:用户成功登录系统后置条件:显示私信记录信息用户动作系统响应用户在微博主页中, 点击“私信”超链接1.系统根据用户请求,查找数据表,显示用户的相关私信信息列表。21. 添加个人标签Use Case名称: 添加个人标签目的: 用户可以添加个人标签信息参与者:用户前置条件:用户成功登录系统后置条件: 显
29、示添加后的标签信息用户动作系统响应用户在个人信息页面中, 点击“添加个人标签”超链接,用户填写标签信息点击提交1. 系统根据用户请求,跳转到个人标签编辑页面。2. 将用户提交的个人标签信息写到用户信息表中22. 上传图片Use Case名称: 上传图片目的: 用户可以添加个人图片参与者:用户前置条件:用户成功登录系统后置条件: 显示添加后的图片用户动作系统响应用户在个人信息页面中, 点击“上传图片”超链接,来到上传页面用户选择图片点击上传1系统根据用户请求,跳转到图片上传页面。2将用户提交的上传的图片信息写到用户信息表中并保存图片到服务器中2.4.6系统的数据流图 数据流图(Data Flow
30、 Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的重要表达工具及用于表达软件模型的一种图示方法。数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和解决的过程,由于它只反映系统必须完毕的逻辑功能,所以它是一种功能模型。它描述信息流和数据从输入移动到输出的过程中所经受的变换。数据流四种基本符号:矩形表达数据的源点与终点;圆角的矩形表达变换数据的解决;少右面的边矩形表达数据的存储;箭头表达数据的流动的方向。 图2.5微博系统数据流图2.4.6 系统数据字典数据字典则是系统中各类
31、数据描述的集合,是进行具体的数据收集和数据分析所获得的重要成果。数据字典在数据库设计中占有很重要的地位。数据字典通常涉及数据项,数据结构,数据流,数据存储和解决过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义描述数据流,数据存储的逻辑内容。 1、重要数据流定义名字:用户名别名:用户昵称描述:用户进行登录的时候用于对用户的凭证,唯一标记一个用户定义:用户名=用户注册时用于唯一标记用户的数据位置:输入到登录界面名字:密码别名:无描述:用户进行登录的时候用于对用户的验证定义:密码=用户登录验证位置:输入到登录界面名字:微博ID别名:
32、微博序号描述:唯一标记一篇微博定义:微博=有数据组成位置:标注微博的序号,有数据库自行决定名字:微博内容别名:无描述:发布的微薄的内容信息定义:微博内容=微博标题+内容位置:用户所发布的微博内容名字:发布时间别名:无描述:用户发布微博的当时当前日期定义:日期=年+月+日+时+分位置:输入到登录界面名字:微博评论别名:无描述:用户看到微博后进行评论位置:在每篇微博的后面名字:私信记录别名:私信内容描述:用户之间进行发私信聊天定义:私信记录=发私信日期+内容位置:用户私信记录名字:粉丝别名:关注你的用户名描述:对某一用户感爱好,关注该用户后成为其粉丝定义:关注该用户后成为其粉丝位置:某一用户粉丝列
33、表内名字:关注的好友别名:无描述:用户对某以用户感爱好,关注那个用户定义:关注自己喜欢的用户位置:用户关注好友列表内名字:收藏微博别名:微博收藏列表描述:用户收藏的微博列表定义:用户查看所关注的好友微博后,可点击收藏按钮位置:用户微博收藏列表名字:用户别名:微博系统成员描述:注册后成为微博系统的成员,可发表微博,评论微博等定义:微博系统的成员第三章 总体设计3.1 总体设计的任务 总体设计的基本目的就是回答“概括的说,系统应当如何实现?”这个问题,因此总体设计又称为概要设计或是初步设计。通过这个阶段工作将划分组成系统的物理元素程序、文献、数据库、人工过程和文档等等。总体设计的另一项重要任务是设
34、计微博软件的结构,也就是要拟定系统中每个程序是由哪些模块组成的,以及这些模块互相之间的关系。3.2 功能模块3.2.1 系统功能模块描述1) 注册模块当游客打开微博时,首页面就是微博系统的登陆界面,假如游客尚未注册为系统用户,则必须注册为微博用户方能进入系统,游客可以在登陆页面点击注册的超链接,进入微博系统注册页面,填写相应的信息之后提交,即完毕注册,然后游客就可以以系统用户的身份登录系统。2) 登录模块当已注册用户打开系统,用户可以在登陆界面输入用户名,密码,和验证码,系统通过验证,用户就可以进入系统,进行相应的操作。3) 发表微博模块当用户进入到系统之后,用户可以将自己想说的话,以及此时此
35、刻的心情和感受,在编辑框里面编辑并发表出去,这样关注此用户为好友的用户就可以看到此用户发表的内容。4) 评论模块当用户登录到系统来到微博系统的主界面,系统就会积极推送你所关注的好友的微博,你可以点击评论,这样系统就会跳转到评论页面,用户可以编辑评论并拟定。5) 关注好友模块假如用户A想关注用户名为B的用户,此时用户A就可以在搜索里面进行搜索,将搜索类型选择为用户名,然后输入想要关注的用户名B,点击搜索,此时系统就会搜索出所有用户名为B的用户,并且在搜索出来的用户后面有一个关注链接,这样用户A点击关注,就可以完毕对用户B的关注,同时在用户A的微博列表里面,也会有用户B的微博。6) 个人信息查看/
36、修改模块当用户想查看或者修改个人的信息时,可以通过单击左侧个人信息栏里面再记得用户名,这样系统就会跳转到你的个人信息页面,用户可以修改密码,同时也可以对已有的个人信息进行重新编辑吗,最后进行拟定,系统就会保存用户的新的个人信息到数据库。7) 收藏微博当用户在主页面的微博列表里看到自己比较喜欢的微博时,就可以点击收藏,这样该微博就加入了自己的收藏列表里面,用户可以在自己的收藏列表里面查看已收藏的微博,并且在收藏的列表里取消收藏。8) 删除个人微博当用户想删除自己发表的某一篇微博的时候,用户可以点击左侧个人信息栏里面的微博,系统就会提取出来自己发表的所有微博,在没一条微博的右下角都有一个删除按钮,
37、这样用户就可以找到自己想删除的微博,并且删除。9) 私信假如用户想对某一用户传达自己想对他说的话,而不想通过对用户微博评论的方法让对方知道,就可以对该用户发私信,这样传递的话只有你和对方知道,当对方看到以后也可以给你回复,从而实现了沟通的目的。3.3 数据库设计3.3.1 概念结构设计在概念设计阶段中,从用户的角度看待数据及解决规定和约束,产生一个反映用户观点的概念模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂限度大大减少,不受特定DBMS的限制。运用ER方法进行数据库的概念设计,可提成三步进行:一方面设计局部ER模式,然后把各局部ER
38、模式综合成一个全局模式,最后对全局ER模式进行优化,得到最终的模式,即概念模式。1、 设计局部ER模式实体和属性的定义1) 私信(发送人,接受人,发送时间,发送内容) 私信发送人发送内容接受人发送时间图3.4发私信实体与属性的定义3)评论(评论人,被评论人,标题,内容,添加时间,类别等)评论被评论人评论人评论日期评论内容图3.5评论实体与属性的定义 2、 微博的全局ER模式如图所示:3.3.2 逻辑结构设计根据对需求得到的数据结构进行分析,按数据输入输出的规定,拟定表和表间的关系,并进行验证、调整、改善、查询、浏览等,使其可以实现用户对数据和功能的规定。在逻辑设计中,把需求分析中所得到的E-R
39、图转换为与数据模型相符合的逻辑结果。以E-R图为重要依据,设计出系统相关的整体逻辑结构(即相关关系模式)。根据分析拟定系统要设立如下表:1) 用户 (用户ID,用户名,密码,性别,个人标签,图片Id,微博数,好友数,粉丝数)2) 微博 (微博ID ,用户名,微博内容 ,发布时间)3) 收藏的微博 (ID,用户ID,微博ID,收藏时间)4) 好友关系表 (ID,关注用户名,被关注用户名)5) 评论 (ID,微博ID,评论用户名,被评论用户名,评论内容,评论时间)6) 私信记录(私信ID,私信源对象,私信目的对象,私信内容,私信时间)3.3.3 物理设计下面是微博系统所有表的结构:tb_user用
40、户表结构如表31所示:表31 tb_user 用户表字段类型是否为空是否为主键描述userIdint否是用户IDuserNamevarchar(50)否否用户名passwordvarchar(50)否否用户密码sexint(2)否否性别persoalLabvarchar(50)否否个人描述pictureIdvarchar(50)否否用户头像idtotalWeiBoInt(10)是否发表微博总数totalFriendsInt(10)是否好友总数totalFansInt(10)是否粉丝总数 Comment评论信息表结构如表32所示:表32 personalmessage信息表字段类型是否为空是否为
41、主键描述Idint否是IDweiboIdInt否否微博idpreUserIdInt否否评论用户名lateUserIdInt否否被评论用户名contentVarchar(200)否否评论内容personalMessageTimedatetime否否发表评论时间Friendship好友关系表机构如表33所示:表33 friendship广播信息表字段类型是否为空是否为主键描述Idint否是idpreUserIdInt是否关注用户名lateUserIdInt是否被关注用户名tb_weibo微博信息表机构如表34所示:表34 tb_weibo信息表字段类型是否为空是否为主键描述weiboIdint否是
42、微博idweiBoContentvarchar(200)否否微博内容postTimedatetime否否发表时间userIdInt否否用户idStoreweibo收藏的微博信息表如表35所示:表35 storeweibo信息表字段类型是否为空是否为主键描述IdInt否是iduserIdInt否否用户idweiboIdInt否否收藏微博idstoreTimeDatetime否否收藏时间Personalmessage私信信息表如表36所示:表36 personalmessage信息表字段类型是否为空是否为主键描述Idint否是idpreUserIdInt否否源用户idlateUserIdInt否否目的用户idContentvarchar(500)否否私信内容personalMessageTimeDatetime否否私信时间第四章 具体设计4.1 系统整体功能流程由于系统是可以供多个用户使用同一个服务系统,为了是多用户使用时并行性和发布方便性,系统决定使用B/S的运营结构模式。该系统的重要流程是系统管理员或普通用户通过身份验证进入各自的主页面,之后可以选择相应的功能进行信息的解决。系统的整体业务流程图如图4.1所示:用户