




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉工商学院信息工程学院项目名称: 个人博客网站的实现(Java)学生姓名: 学 号: 班 级: 指导教师: 2014年12月23日目录1绪论11.1系统应用的意义11.2主要设计任务11.3相关技术概述12系统需求分析32.1设计目标分析32.2功能需求分析32.3数据库概念设计分析43 系统设计与实现63.1总体架构设计63.2数据逻辑设计63.3功能模块设计84 功能测试94.1前台功能测试94.2后台功能测试124.3管理员功能测试175总结18参考文献191绪论1.1系统应用的意义博客或网络日志(英语:Blog,为Web Log的混成词),台湾译作网志、部落格,港澳译作网志,马新译作部落格、博客、网志,是一种由个人管理、不定期张贴新的文章、图片或影片的网页或联机日记,用来抒发情感或分享信息。博客上的文章通常根据张贴时间(Chronological Order),以倒序方式由新到旧排列。多博客作者专注评论特定的课题或新闻,其他则作为个人日记。一个典型的博客结合了文字、图像、其他博客或网站的超链接、及其它与主题相关的媒体。由于沟通方式比电子邮件、讨论群组更简单和容易,Blog已成为家庭、公司、部门和团队之间越来越盛行的沟通工具。博客秉承了个人网站的自由精神,但是综合了激发创造的新模式,使其更具开放和建设性。它作为一种新表达的方式,它的传播不仅情绪,包括大量的智慧、意见和思想。某种意义上说,它也是一种新的文化现象,博客的出现和繁荣,真正凸现网络的知识价值,标志着互联网发展开始步入更高的阶段。1.2主要设计任务个人博客系统的总任务是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,开发一个具有良好人机交互界面、具有开放体系结构的个人博客网站,为网络用户提供进行在线交流的平台。具体的要求如下:1).信息服务:博文显示,评论显示,博文分类显示;2).管理服务:管理员可以管理用户,管理博文与评论;3).博主可以添加和删除博文,对自己的博文设置精品置顶;4).留言回复服务:游客可以对某文章发表评论,博主可以对某评论进行回复、设置精品置顶、删除评论等;1.3相关技术概述1.3.1 Servlet 技术servlet是在服务器上运行的小程序。这个词是在Java applet的环境中创造的,Java applet是一种当作单独文件跟网页一起发送的小程序,它通常用于在客户端运行,结果得到为用户进行运算或者根据用户互作用定位图形等服务。服务器上需要一些程序,常常是根据用户输入访问数据库的程序。这些通常是使用公共网关接口(CGI(Common Gateway Interface))应用程序完成的。然而,在服务器上运行Java,这种程序可使用Java编程语言实现。在通信量大的服务器上,Javaservlet的优点在于执行速度更快于CGI程序。各个用户请求被激活成单个程序中的一个线程,而无需创建单独的进程,这意味着服务器端处理请求的系统开销将明显降低。Java Servlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会,本文直接采用Servlet这个名称而不做任何翻译,读者如果愿意,可以称之为“小服务程序”。Servlet其实和传统的CGI程序和ISAPI、NSAPI等Web程序开发工具的作用是相同的,在使用Java Servlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应用服务器和模块来支持Servlet。得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合Java Servlet规范,Servlet是完全平台无关且是Web服务器无关的。由于Java Servlet内部是以线程方式提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此Java Servlet效率非常高。但Java Servlet也不是没有缺点,和传统的CGI、ISAPI、NSAPI方式相同,Java Servlet是利用输出HTML语句来实现动态网页的,如果用Java Servlet来开发整个网站,动态部分和静态页面的整合过程简直就是一场噩梦。这就是为什么SUN还要推出Java Server Pages的原因。1.3.2 JavaBean原理和机制JSP的一大特点就是与JavaBeans的结合,而JSP与JavaBeans结合的一个突出的优点是页面显示和业务逻辑的分离。这可以使团队协作的更好,开发出更高质量的站点。JavaBean是一种可以重用的Java组件,它类似于COM,在JSP程序中常用来封装事物逻辑、数据库操作等,可以很好的实现业务逻辑和前台程序的分离,使得系统具有更好的健壮性和灵活性。事件处理是JavaBeans体系结构的核心之一。通过事件处理机智,可以让一些组件作为事件源,发出可被描述环境或其他组件接受的事件。这样,不同的组件就可在构造工具内组合在一起,组件之间通过事件的传递进行通信,构成一个应用。从概念上讲,事件是一种在“源对象”和“监听对象”之间、某种状态发生变化的传递机智。事件有许多不同的用途,如:鼠标事件、窗口边界改变事件、键盘事件等。在Java和JavaBeans中则是定义了一个一般的、可扩充的事件机制,它能够对事件类型和传递模型的定义和扩充提供一个公共框架,并适合于广泛的应用。与Java语言和环境有较高的集成度,事件能描述环境捕获和被激发。能使其他构造工具采取某种技术在设计时直接控制事件。JSP和ASP.NET同样是网站开发中常用的开发工具。但是,ASP是微软的产品,其应用只能是在Windows平台上,移植性差,而且以源代码的形式存放在服务器端,安全性差。每次由服务器解释运行,运行效率不高。Jsp页面文件执行时被编译成字节代码,由客户端流览的Java虚拟机解释执行,不再是源代码,因此执行效率和安全性高。将数据库连接的重要信息存放在JavaBean文件后,可以编译成虚拟机才能解释的字节代码,确保了数据库的安全。在ASP技术里,通过Web页面要实现一些特定的功能比较困难,比如基于网页的报表,打印实现起来就比较麻烦。ASP提供的解决方案是自己开发组件,通过在服务器端注册组件,成为独立的可以重复利用的模块供读者调用。因此要求读者需要掌握比较复杂的变成语言的开发技术。在JSP开发技术里,可以通过开发JavaBean文件实现同样的功能,JavaBean不需要注册,只要放置在相应的目录下就可以运行。可以实现ASP的COM组件同样的功能。此外JSP推出主要就是考虑到平台的无关性。JSP代码可以在APACHE、IIS等服务器上执行,支持大部分操作系统。JSP继承JAVA技术的优点:一次运行,处处运行。1.3.3开发平台:Eclipse+tomcatEclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成Eclipse Platform、JDT、CDT和PDE.JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。1.3.4数据库:MySQLMySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracal收购.对于My sql的前途,没有任何人抱乐观的态度.目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。2系统需求分析2.1设计目标分析 个人博客系统的设计目标有:信息服务,管理服务,博文发表服务,评论发表与回复服务。1). 信息服务即为博客文章显示:本模块用于帮助用户快速定位到自己关注的博客页面及对应的博文显与评论。2). 管理服务:博主可以管理博文与评论,对博文进行修改,删除、精品设置,对评论进行删除,精品设置。3). 博文发表服务:该模块实现了博主发表新文章的功能,博主发表文章时,可以选择文章所属类别,此外只有是博主才能发表文章,对此进行了严格的身份验证。4). 发表评论与回复服务:博主登录即可查看评论,并可以对评论进行回复,游客及管理员无需登录即可对文章进行发表评论。2.2功能需求分析个人博客系统通常提供三类功能:1).信息显示功能:它可分为博文显示,评论显示,博文分类显示;2).博文编辑功能:分为博文发表,博文修改;3).留言功能:游客可以对博文发表自己的评论,博主可以回复评论;4).个性管理功能:博主可以对自己的博客进行各种管理,修改个人信息,修改密码等。在此,参考现有的几大博客网站新浪博客,采用Browser/Server结构,将个人博客网站划分为两个子系统前台与后台。2.2.1前台功能需求分析在前台的功能实现上,可以分为以下几个部分:1). 博文主页:游客可以浏览博客的首页,首页包括博文的摘要及分类;2). 博文浏览:游客可以浏览博客中感兴趣的博文;3). 博文评论:游客可以在浏览博文的同时进行对博文的评论。2.2.2后台功能需求分析通过计算机网络将前台与后台的数据库相连,网站管理员将从前台得到的信息进行处理,实现博文管理,评论与回复管理,用户管理:1).博主登陆:博客主人用帐号,密码登录到网站。网站检测用户的帐号,密码并给予管理员权限对网站进行操作;2).博文发布:发布博文,包括博文标题,内容及分类;3).博文管理:对博客中的文章进行删除,更新等操作;4).评论管理:对博客中的评论进行删除,更新等操作;5).修改个人信息与密码:修改博主个人信息与博主账号的密码;6).用户管理:系统管理员对博主用户账号的管理。2.3数据库概念设计分析 数据对象实体包括用户、博文、评论、回复。 1).用户(用户ID,用户名,用户密码,用户性别,用户Email,用户座右铭);用户分E-R图如下图2.3.1所示。 用户用户Id用户名用户座右铭用户密码用户性别用户Email图2.3.1 用户分E-R图2).博文(博文ID,博文标题,博文类别,发表时间,博文内容,精品标示,点击量,评论量);博文分E-R图如下图2.3.2所示。博文标题精品标示博文类别发表时间博文内容博文博文ID点击量评论量图2.3.2 博文分E-R图3.)评论(评论ID,评论标题,发表时间,评论内容,精品标示);评论分E-R图如下图2.3.3所示。评论标题发表时间评论内容精品标示评论评论ID图2.3.3 评论分E-R图4.)回复(回复ID,回复标题,发表时间,回复内容,精品标示);回复分E-R图如下图2.3.4所示。回复回复ID回复标题回复时间回复内容回复标示图2.3.4 回复分E-R图5.)数据库概念设计E-R全局图如下图2.3.5所示。评论回复用户博文发表评论发表回复图2.3.5 概念设计E-R全局图3 系统设计与实现3.1总体架构设计 前台:进入网页显示主页,在主页可以直接查看精品博文、博文的评论与发表评论,架构设计如下图3.1.1所示。图3.1.1前台架构设计后台:进入网页显示主页,在主页可以进入登录界面进行登录,登录成功后进入个人主页,在个人主页可以进行发表博文,管理博文,管理评论,修改个人信息,查看个人信息,用户密码修改,用管理员账号登录可以进行用户删除,架构设计如下图3.1.2所示。图3.1.2 后台架构设计3.2数据逻辑设计 用户注册产生用户信息,用户发表博文产生博文信息,博文被评论产生评论信息,评论被回复产生回复信息,数据库逻辑设计如下方案:1)用户(用户ID,用户名name,用户密码password,用户性别sex,用户Email,用户座右铭said);数据库实现代码:/*=*/* Table: user */*=*/create table user( id int not null auto_increment, user_name varchar(20), user_password varchar(20), user_sex varchar(2), user_email varchar(100), user_said varchar(200), primary key (id);数据库实现如下图3.2.1所示。图3.2.1用户表2)博文(博文ID,博文标题title,博文类别face,发表时间optime,博文内容concent,精品标示isTop,点击量djl,评论量pll);数据库实现代码:/*=*/* Table: bowen */*=*/create table bowen( bowen_id int not null auto_increment, bowen_title varchar(70), bowen_opTime datetime, bowen_djl int not null default 0, bowen_pll int not null default 0, bowen_content varchar(2000), bowen_face varchar(10), bowen_isTop varchar(1) default n, primary key (bowen_id);数据库实现如下图3.2.2所示。图3.2.2 博文表 3)评论(评论ID,博文标题(评论标题)title,发表时间optime,评论内容concent,精品标示isTop);数据库实现代码:/*=*/* Table: pinlun */*=*/create table pinlun( pinlun_id int not null auto_increment, pinlun_title varchar(70), pinlun_opTime datetime, pinlun_content varchar(1000), pinlun_isTop varchar(1) default n, pinlun_ishuifu varchar(1)default n, primary key (pinlun_id); 4)回复(回复ID,博文标题(回复标题)title,发表时间optime,回复内容concent,精品标示isTop); 评论与回复的标题实际情况下都为博文标题,实现为实际考虑鉴于回复与评论的共性将其放于同一个表,在评论表中加入ishuifu标示该项为评论还是回复,实现评论表与回复表的合并。数据库实现如下图3.2.3所示。图3.2.3 评论回复表3.3功能模块设计 个人博客一共实现了,注册功能,登录功能(注销),博文发表(修改,删除,精品设置)功能,评论发表(删除,精品设置)功能,回复(回复删除,精品设置)功能。功能模块设计如下图3.3所示。图3.3 功能模块设计4 功能测试4.1前台功能测试4.1.1查看主页测试 进入个人博客,即为主页,在主页中单击标题可以查看博文内容,也可以通过分类进行博文查看,如下图4.1.1所示。图4.1.1主页查看测试4.1.2登录功能测试 1.)单击主页中“登录”链接进入登录界面如下图4.1.2所示。图4.1.2 登录页面2.)输入用户名与密码,单击“登录”,登录失败提示失败信息,如图4.1.3所示。图4.1.3 登录错误提示3.)登录成功进入个人主页,并显示博文管理页面与提示登录成功信息,进入后台博文管理界面,如图4.1.4所示。图4.1.4 博文管理界面4.)单击“注销“,注销成功,回到主页并显示注销成功信息,如图4.1.5所示。图4.1.5 注销功能测试4.1.3查看博文功能测试 1.)在主页单击标题链接可以直接查看博文内容,如图4.1.6所示。图4.1.6 博文查看功能测试2.)也可以在主页中单击博文分类链接进入博文分类查看页面,如图4.1.7所示。图4.1.7 博文分类查看功能测试4.1.4评论功能测试单击博文显示页面中的查看评论.链接进入评论查看界面,如图4.1.8所示。图4.1.8 评论查看功能测试4.1.5评论发表功能测试 1.)在评论查看时可以进行评论发表,如下图4.1.9所示。图4.1.9 评论发表功能测试 2.)在图中所示文本框输入评论内容,单击发表,发表成功显示成功消息,如图4.1.10所示。图4.1.10 评论成功提示 同时显示发表的评论,如下图4.1.11所示。图4.1.11 评论成功显示4.2后台功能测试4.2.1博文发表与管理功能测试1.)登录进入个人主页,单击“发表博文“链接,进入博文发表界面,如下图4.2.1所示。图4.2.1 博文发表功能测试 2.)输入信息后单击发表,成功则进入个人主页的博文管理界面,显示成功消息,如下图4.2.2所示。图4.2.2 博文发表成功单击标题链接可以查看博文内容。3.)单击删除,成功如下图4.2.3所示。图4.2.3 博文删除功能测试4.)单击修改进入修改界面,如图4.2.4所示。图4.2.4 博文修改功能测试 输入修改信息,单击确认修改,如下图4.2.5所示。图4.2.5 博文修改成功5.)单击精品,则会给博文添加精品标示,如下图4.2.6所示。图4.2.6博文精品设置功能测试 单击取消精品,则会取消博文的精品标示,如下图4.2.7所示。图4.2.7博文取消精品功能测试4.2.2评论与回复管理功能测试 1.)登录后,单击管理评论与回复,进入评论与回复管理界面,如下图4.2.8所示。图4.2.8评论与回复管理 红色回复两字标示该条为博主回复。 2.)单击删除,删除成功,提示消息,如下图4.2.9所示。图4.2.9评论与回复删除功能测试 3.)单击精品,将该信息标记为精品,并提示信息,如下图4.2.10所示。图4.2.10评论与回复精品设置功能测试4.)单击取消精品,则取消精品设置,如下图4.2.11所示。图4.2.11评论与回复取消精品4.2.3博主回复评论功能测试 博主登录以后,进行评论的查看时,评论的后尾都会有“回复”,单击回复进入回复界面,如下图4.2.12所示。图4.2.12回复功能测试4.2.4用户管理功能测试 1.)单击修改用户信息,进入用户信息修改界面,如下图4.2.13所示。图4.2.13 个人信息修改除了用户名无法修改外,的其他用户信息都可以修改,输入信息,单击修改按钮,修改成功提示信息,如下图4.2.14所示。图4.2.14 个人信息修改成功2.)修改密码,单击密码修改进入修改界面,如下图4.2.15所示。图4.2.15 密码修改输入信息,单击修改按钮,修改成功提示信息,如下图4.2.16所示。图4.2.16 密码修改成功4.3管理员功能测试1.)用管理员账号登录会在个人主页显示,“用户管理“的选项,单击进入管理用户界面,如下图4.3.1所示。图4.3.1管理员界面 2.)单击删除可以删除该用户,如下图 4.3.2所示。图4.3.2 用户删除在此我的个人博客系统功能测试完成。5总结因为学习期间并不是很认真,所以有太多太多的知识都没有印象,特别是企业老师过来指导的第一节课,一开始的环境配置就把我弄晕了,仅仅安装myEclipse配置Tomcat6.0就花了一上午的时间,还是会有各种各样的莫名其妙的问题,接下去的数据库的建立那更是无解了,因为本学期有数据库这么一门课程,但是我在我的个人电脑装了半个学
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教版选修5 化学:1.2 有机化合物的结构特点 教学设计
- 新疆考公2025真题
- 2025医疗机构药品供应系统升级改造项目合同
- 第二单元《鉴赏“虚”“实”艺术传承革命精神》大单元教学设计-2024-2025学年统编版高中语文选择性必修中册
- 3.3 水资源(第2课时) 说课稿2023-2024学年人教版地理八年级上册
- 4.1化学式(第3课时化学式的相关计算)说课稿-2024-2025学年九年级化学科粤版(2024)上册
- 5. 波的干涉、衍射说课稿-2025-2026学年高中物理教科版选修3-4-教科版2004
- 第6节 程序的循环结构说课稿-2025-2026学年初中信息技术粤教版2013第二册-粤教版2013
- 2025深圳市标准购房合同样本
- 第5课 神奇的变化-制作形状补间动画教学设计-2025-2026学年小学信息技术(信息科技)第三册下粤教A版
- 破圈与共生:2025中国社交媒体全球化发展报告
- 2025年社保理赔考试题目及答案
- 产教融合校企合作课件
- 质量攻关项目汇报
- 电力企业综合应急预案编制导则
- 低空经济 翻译
- 台风灾害教学课件
- 2025-2030中国单轴激光陀螺行业市场发展趋势与前景展望战略研究报告
- 热射病护理病例讨论
- 软装事业部成本控制计划
- 2025年江苏二级造价工程师考试《建设工程造价管理基础知识》真题(含答案)
评论
0/150
提交评论