版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、I / 35毕业论文(设计)毕业论文(设计)题目:题目:博客的设计与实现博客的设计与实现信息科技大学继续教育学院信息科技大学继续教育学院目录目录目录目录 1第一章概述第一章概述 21.1 个人博客的概念 21.2 个人博客的发展现状 21.3 WEB技术的发展 41.4 研究现状 41.5 开发技术 51.5.1 JSP 的基础Servlet 技术 61.5.2 JavaBean 原理和机制 61.5.3 开发平台:Eclipse+dreamweaver71.5.4 数据库:SQL SERVER 20007第二章需求分析 92.1 系统目标 92.2 系统的功能要求 92.2.1 前台 92.
2、2.2 后台 102.3 系统的性能需求 102.4 系统的数据需求 112.4.1 系统的数据需求包括如下几点:112.4.2 系统的数据字典 112.5 建立系统的约束 132.5.1 人力、资金、时间的约束 132.5.2 技术发展规律的约束 13第三章概要设计 143.1 系统体系结构 143.2 主要功能设计 143.2.1 主要功能模块 143.2.2 系统流程图 153.2.3 系统模块介绍 163.3 数据库设计 163.4 信息安全设计 183.4.1 网络安全 193.4.2 其他安全 19第四章详细设计 20II / 354.1 首页面与主要页面设计 204.2 功能模块
3、设计 204.3 系统实现 214.3.1 博客前台首页 head_main.jsp 详细功能与部分代码 224.3.2 评论信息查询 head_disussList.jsp 详细功能与部分代码 254.3.3 系统管理 backMainPage.jsp 详细功能与部分代码 27第五章遇到的难点和解决方法 30结束语 31致 32参考文献 33第一章第一章 概概 述述对个人而言,博客可以调动个人的积极性,充分发挥个人的创造性。从 2002 年开始,国博客开始迅猛发展起来,从最初的只有几千个尝鲜者到现在的各式各样的博客,圈子。在这三年的发展过程中,主要呈现出如下几个特点:1).1).博客是可以将
4、个人信息完整呈现在互联网上的载体。2).2).博客具有“准实名制”趋势,有助于信任机制的建立。本文就此探讨了我国博客发展的几个要素。1.11.1 个人博客的概念个人博客的概念博客是 WEB LOG 的缩写,简单来说就是网络日记。它是 1997 年 12 月由美国的 Jorn Barger 最早提出的,这些年全球博客获得了突飞猛进的发展。据博客搜索 Technorati 统计,目前全球平均每 5.8 秒钟诞生一个博客。它是一个新型的个人互联网出版工具,博客使用者可以很方便地用文字、 、影音、图片建立起个性化的网络世界。博客秉承了个人的自由精神,但是综合了激发创造的新模式,使其更具开放和建设性。它
5、作为一种新表达的方式,它的传播不仅情绪,包括大量的智慧、意见和思想。某种意义上说,它也是一种新的文化现象,博客的出现和繁荣,真正凸现网络的知识价值,标志着互联网发展开始步入更高的阶段。1.21.2 个人博客的发展个人博客的发展现状现状2006 年 11 月 3 日,全球中文博客站点数量达到 5230 万,博客(博客 ger)用户数达到 1987 万,平均每个博客(博客 ger)用户拥有大约 2.6 个博客,博客站点数和博客用户数均比前一年有一定程度的增长,人均拥有博客数与前一年相比也略有上升。在近二千万的中国博客用户中,每个用户平均每 7.6 天更新一次博客,活跃的博客用户数(一周有更新的博客
6、)达到 302 万,约 15.2%的用户每周更新博客,同时,只有大约 4.6%的用户每天更新博客。在用户更新的博客中,约 42%的博客文章在 500 个汉字(1000 个字节)之,5001000 个汉字(10002000个字节)的博客文章占约 16.5%,越是长篇大论的文章在博客中所占比例则越少。用户更新博客的时间大部分集中在白天,约 48.5%的用户选择在工作时间(上午 10 点下午 6 点)更新自己的博客,其中,在临近下班前(下午 4 点6 点)博客更新数达 12.4%,而约 16.3%的用户选择在晚上 7 点10 点更新博客,为全日最高峰,晚上 10 点之后时间更新博客的数量逐渐减少。2
7、006 年,拥有独立域名的博客站点,在博客站点总数中占约 0.43%,这表明,绝大多数的用户将博客服务商作为他们的博客站点首选。而这一年,中国大陆博客服务商(BSP)持续大幅增长,博客服务商数量达到 1460 家,与去年同期相比增长近 55%;大型网络公司如搜狐、百度纷纷推出相应的博客服务,而新兴的博客服务站点如 51 也开始崭露头角。过去一年中,中国博客发展速度整体趋缓,博客用户增长数较之去年有小幅上升,博客服务商之间的市场竞争日趋激烈,与早期提供博客服务的运营商相比,传统门户与大型公司的博客服务已占据市场主导地位。总体而言,2006 年中国博客发展呈现 5 大特点:专业博客如医药类、教育类
8、等增长较快,博客圈成为社区发展新方向;博客服务商(BSP)死亡比例逐渐增高,2005 年 Top100 服务商中,近 20%的站点已经关闭或终止服务;博客服务商(BSP)开始逐渐支持手机访问和发贴,发展迅速;综合博客服务商(BSP)增长很快,越来越多的服务商开始提供音频、视频博客等功能;利用博客进行排名作弊的站点越来越多,06 年出现爆炸性增长,其中小型博客服务商(BSP)尤为突出。现今,博客已经由 06 年的风风火火变的平淡,通过各种方式融入了我们的生活,成为了我们表现自己的主要方式。它们大部分是由简短而且经常更新的帖子构成,所有文章都是按照年份和日期排列。看上去平淡无奇,毫无可炫耀之处,但
9、它让每个人零成本、零维护地创建自己的网络媒体,每个都可以随时把自己的思想火花和灵感更新到博客站点上。个人博客目前面临的主要问题:由于文化市场监督的不利,势必会造成一些淫秽的容广泛传播于网路,这就需要文化部门的有力监督。1.31.3 WebWeb 技术的发展技术的发展1991 年,欧洲粒子物理研究所(CERN)的软件工程师 Tim Berners-Lee 发布了他的万维网(World Wide Web)。从此以后,通过互联网看到的将不仅仅是文字,互联网有了图片,后来又有了音频、动画甚至视频。WWW 的成功在于它制定了一套标准的,易于掌握的超文本标记语言 HTML、信息资源的统一定位格式URL 和
10、超文本传输协议 ,用超和超媒体把 Internet 上各种相关数据有机地起来,使互联网上的资源实现了共享。你只需要点击鼠标就可以浏览来自世界各地的丰富的、直观的信息,一个不懂电脑的人也可以很快成为 Internet 行家。开始的 web 页面都是静态文本,页面呆板,互动性不强,但是随着技术的发展,很快各种各样的动态网页技术涌现出来,这其中包括 CGI,ASP,PHP,Java,脚本语言如:JavaScript, VBScript 等等。JavaScript 和 VBScript 可以嵌入在 HTML 中实现一些客户端的动态功能;CGI 大大扩展了 Web 服务的功能,可以实现 web 服务器与
11、数据库与文件系统、应用程序的通信,动态生成超文本,于是网页活了起来。但 CGI 的运用需要具有一定的编程能力与算法技巧,而且与 HTML 要分开编写,维护和编写都比较困难,效率和安全性也不好。 ASP, PHP 克服了这些缺点,获得了广泛的应用。Java 的出现给 Web 带来了新的活力。它具有完全的平台无关性,一次编写处处运行,用 Java 可以编写 web 页中执行的小程序 Applet。它简单、面向对象、安全、健壮、分布式等优点特别适合开发 web 应用。在美国,JSP+ Servlet+ E 已经成为电子商务的开发标准。1.41.4 研究现状研究现状现今,博客已经由 06 年的风风火火
12、变的平淡,通过各种方式融入了我们的生活,成为了我们表现自己的主要方式。它们大部分是由简短而且经常更新的帖子构成,所有文章都是按照年份和日期排列,有些类似斑竹的日记。看上去平淡无奇,毫无可炫耀之处,但它可以让每个人零成本、零维护地创建自己的网络媒体,每个都可以随时把自己的思想火花和灵感更新到博客站点上。现在的博客的主要特点:零机制零机制:博客属于个人所有,是自发建立和非正式的建设。BSP 不能对博客发号施令。3 / 35零技术零技术:博客不需要作的专业知识,可以像发一样简单地实现博客网页的呈现。技术的极度简化,包括架构和申请博客、编辑、上传和修改容等。零成本零成本:任何一个人都可以像申请免费般免
13、费申请自己的博客。不需要注册域名的成本,不需要租用服务器空间的成本,不需要许多软件工具的成本。零编辑零编辑:博客用户就是编辑,即时写作、即时发布、自我检查。这形成了与传统写作截然不同的“体验” ,真正实现了作者“零磨损”的开放式写作。零形式零形式:博客页面的表现形式和文章容的表现方式十分灵活,没有特定形式。与个人主页相比较,博客是使用方便的、交互性强。与传统的电子、BBS 和 ICQ 这三种互联网沟通方式相比,博客是一种较严肃的沟通平台。BBS 公共匿名性很强,而个人性很弱,因此缺乏约束。电子和ICQ 则是多用于个人间的通讯,而博客是个人性和公共性的结合。博客是个人在网上展示自己、与别人沟通交
14、流的综合平台,它的管理比 BBS 简单的多。1.51.5 开发技术开发技术一些人可能已经对微软的 Active Server Pages(ASP)很熟悉了;JSP 在多数方面与 ASP 功能一样但是具有平台无关特性。他们都用来帮助 Web 容的开发者们使用相对少的代码创建动态的网页。一个 JSP页面包含掺杂着 Java 代码的 HTML 代码。下面主要介绍下 JSP 的特点:1).1).将容的生成和显示进行分离使用 JSP 技术,Web 页面开发人员可以使用 HTML 或者 XML 标识来设计和格式化最终页面。2).2).JSP 技术源于 Java 语言。Java 语言是体系结构中立的。这使
15、JSP 技术可以在实现这个 JSP 平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。3).3).JSP 系统是可移植的。这种可移植性来源于体系结构中立性。4).4).强调可重用的组件。绝大多数 JSP 页面依赖于可重用的,跨平台的组件(JavaBeans 或者Enterprise JavaBeansTM 组件)来执行应用程序所要求的更为复杂的处理。5).5).采用标识简化页面开发 Web 页面开发人员不会都是熟悉脚本语言的编程人员。JSP 技术封装了许多功能,这些功能是在易用的、与 JSP 相关的 XML 标识中进行动态容生成所需要的。6)6).使用 JSP 标识或者小脚本来生
16、成页面上的动态容。生成容的逻辑被封装在标识和 JavaBeans 组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。7).7).由于 JSP 页面的置脚本语言是基于 Java 编程语言的,而且所有的 JSP 页面都被编译成为 Java Servlet,JSP 页面就具有 Java 技术的所有好处,包括健壮的存储管理和安全性;8).8).作为 Java 平台的一部分,JSP 拥有 Java 编程语言“一次编写,各处运行”的特点。当客户端请求一个 JSP 网页时,JSP Engine 会检查所请求的 JSP 网页是否已经处于被载入执行的状态,如果没有,它会先读取 JSP 程序文件,将它换成 S
17、ervlet 程序代码编译载入,然后才执行请求的服务。也是就说,只有当客户端第一次请求 JSP 网页时,才需要被转换、编译和载入,做到了一次执行,处处执行。JSP 的 Servlet Class 是 JSP Engine 自动帮我们编译产生的,不像 Servlet 需要手动编译,另外,在 JSP 程序中建立新的对象和 Java Bean 非常方便容易。5 / 351.5.1JSP1.5.1JSP 的基础的基础ServletServlet 技术技术Java Servlet 是 JSP 技术的基础,JSP 本身就是预先被编译成 Servlet,然后再运行的,而且大型的Web 应用程序的开发需要 J
18、ava Servlet 和 JSP 配合才能完成,Servlet 这个名称大概源于 Applet,现在国的翻译方式很多,本文为了避免误会,本文直接采用 Servlet 这个名称而不做任何翻译,读者如果愿意,可以称之为“小服务程序” 。Servlet 其实和传统的 CGI 程序和 ISAPI、NSAPI 等 Web 程序开发工具的作用是一样的,在使用 Java Servlet 以后,用户不必再使用效率低下的 CGI 方式,也不必使用只能在某个固定 Web 服务器平台运行的 API 方式来动态生成 Web 页面。许多 Web 服务器都支持 Servlet,即使不直接支持 Servlet 的 Web
19、 服务器也可以通过附加的应用服务器和模块来支持 Servlet。得益于 Java 的跨平台的特性,Servlet 也是平台无关的,实际上,只要符合 Java Servlet 规,Servlet 是完全平台无关且是 Web 服务器无关的。由于 Java Servlet 部是以线程方式提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此 Java Servlet 效率非常高。但 Java Servlet 也不是没有缺点,和传统的 CGI、ISAPI、NSAPI 方式一样,Java Servlet 是利用输出 HTML 语句来实现动态网页的,如果用 Java Se
20、rvlet 来开发整个,动态部分和静态页面的整合过程简直就是一场噩梦。这就是为什么 SUN 还要推出 Java Server Pages 的原因。.2 JavaBeanJavaBean 原理和机制原理和机制JSP 的一大特点就是与 JavaBeans 的结合,而 JSP 与 JavaBeans 结合的一个突出的优点是页面显示和业务逻辑的分离。这可以使团队协作的更好,开发出更高质量的站点。JavaBean 是一种可以重用的 Java 组件,它类似于 COM,在 JSP 程序中常用来封装事物逻辑、数据库操作等,可以很好的实现业务逻辑和前台程序的分离,使得系统具有更好的健壮性和灵活性
21、。事件处理是 JavaBeans 体系结构的核心之一。通过事件处理机智,可以让一些组件作为事件源,发出可被描述环境或其他组件接受的事件。这样,不同的组件就可在构造工具组合在一起,组件之间通过事件的传递进行通信,构成一个应用。从概念上讲,事件是一种在“源对象”和“监听对象”之间、某种状态发生变化的传递机智。事件有许多不同的用途,如:鼠标事件、窗口边界改变事件、键盘事件等。在 Java 和 JavaBeans 中则是定义了一个一般的、可扩充的事件机制,它能够:1).1).对事件类型和传递模型的定义和扩充提供一个公共框架,并适合于广泛的应用。2).2).与 Java 语言和环境有较高的集成度。事件能
22、描述环境捕获和被激发。能使其他构造工具采取某种技术在设计时直接控制事件,遗迹控制事件源和事件监听者之间的联系。事件本身不依赖于复杂的开发工具。特别的,事件机制还应当:1).1).能够发现制定的对象类可以生成的事件。2).2).能够发现制定的对象类可以观察监听到的事件。3).3).提供一个常规的注册机制,允许动态操纵事件源与事件监听者之间的关系。4).4).不需要其他的虚拟机和语言即可实现。5).5).事件源与监听者之间可进行高效的事件传递。6).6).能完成 JavaBean 事件模型与相关的其他组件体系结构事件模型的中立映射。6 / 35JSP 和 ASP.NET 同样是开发中常用的开发工具
23、。但是,ASP 是微软的产品,其应用只能是在 Windows平台上,移植性差,而且以源代码的形式存放在服务器端,安全性差。每次由服务器解释运行,运行效率不高。Jsp 页面文件执行时被编译成字节代码,由客户端流览的 Java 虚拟机解释执行,不再是源代码,因此执行效率和安全性高。将数据库连接的重要信息存放在 JavaBean 文件后,可以编译成虚拟机才能解释的字节代码,确保了数据库的安全。在 ASP 技术里,通过 Web 页面要实现一些特定的功能比较困难,比如基于网页的报表,打印实现起来就比较麻烦。ASP 提供的解决方案是自己开发组件,通过在服务器端注册组件,成为独立的可以重复利用的模块供读者调
24、用。因此要求读者需要掌握比较复杂的变成语言的开发技术。在 JSP 开发技术里,可以通过开发 JavaBean 文件实现同样的功能,JavaBean 不需要注册,只要放置在相应的目录下就可以运行。可以实现 ASP 的 COM 组件同样的功能。此外 JSP 推出主要就是考虑到平台的无关性。JSP 代码可以在APACHE、IIS 等服务器上执行,支持大部分操作系统。JSP 继承 JAVA 技术的优点:一次运行,处处运行。鉴于此,本系统决定使用 JSP 做为开发工具。下面简单介绍一下相关的其他工具:.3 开发平台:开发平台:Eclipse+dreamweaverEclipse+drea
25、mweaverEclipse 是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由 Eclipse 项目、Eclipse 工具项目和 Eclipse 技术项目三个项目组成,具体包括四个部分组成Eclipse Platform、JDT、CDT 和 PDE.JDT 支持 Java 开发、CDT 支持 C 开发、PDE 用来支持插件开发,Eclipse Platform 则是一个开放的可扩展 IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform 允许工具建造者独立开发与他人工具无缝集
26、成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。Dreamweaver MX 是一款专业的 HTML 编辑器,用于对 Web 站点、Web 页和 Web 应用程序进行设计、编码和开发。无论您喜欢直接编写 HTML 代码的驾驭感还是偏爱在可视化编辑环境中工作,Dreamweaver 都会为您提供帮助良多的工具,丰富您的 Web 创作体验。利用 Dreamweaver 中的可视化编辑功能,您可以快速地创建页面而无需编写任何代码。不过,如果您更喜欢用手工直接编码,Dreamweaver 还包括许多与编码相关的工具和功能。并且,借助 Dreamweaver,您还可以使用服务器语
27、言(例如 ASP、ASP.NET、ColdFusion 标记语言 (CFML) 、JSP 和 PHP)生成支持动态数据库的 Web 应用程序。.4 数据库:数据库:SQLSQL SERVERSERVER 20002000SQL Server 2000 作为 Microsoft 家庭的重要成员,是基于客户机/服务器的大型关系数据库系统。SQLServer 2000 这种关系型数据库系统能够满足各种类型的企业客户和独立软件供应商构建商业应用程序的需求,根据客户的反映和需求,是大规模联机事务处理(OLTP) 、数据仓库和电子商务应用程序的优秀数据库平台。SQL Server 2000
28、 具有以下特点:1).1).强大可伸缩性;2).2).支持大型 Web 站点或企业信息处理系统;7 / 353).3).客户机/服务器体系结构;而数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象。各部件之间的关系如图 2-1 所示:应用程序ODBC 管理器ODBC API sql驱动程序管理器数据源名(DSN)ODBC 驱动程序数据源ODBC 层数据层应用层图 2-1 数据关系图8 / 35第二章第二章 需求分析需求分析2.12.1 系统目标系统目标博客系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充
29、的、易维护的、具有良好人机交互界面的个人博客,为网络用户提供进行在线交流的网络平台。通过个人博客可以结交更多的朋友,表达更多的想法,它随时可以发布文章。具体的要求如下:1).1).博主可以简单的添加和删除文章;2).2).独立于具体的数据库平台。对于与数据库交互的部分充分考虑兼容性;3).3).容易在原先基础上进行二次开发;4).4).中间基础平台的无型性。尽量采用开放的标准技术,达到跨平台运行的效果;为了达到以上的开发目的,个人博客应遵循一定的设计和开发与原则:1).1).模块接口定义清晰;2).2).基础类库和接口设计合理,尽量建立叮扩展的接口和抽象类;3).3).数据库操作使用标准 SQ
30、L 语句,如果一定要使用有差别的 SQL 语句,则尽量集中在一起,以减少将来维护和移植的难度;4).4).采用开放的标准和工具等;2.22.2 系统的功能要求系统的功能要求博客系统通常提供三类服务:1).1).信息服务,它可分为:文章显示,热点文章推荐,博主风采2).2).查询服务:可以根据文章容,文章标题,留言容,留言标题等进行模糊查询3).3).留言服务:游客可以对系统进行留言或发表看法意见在此,我参考现有的几大博客如 空间,新浪博客等,采用 Browser/Server 结构,将个人博客划分为两个子系统:前台,后台。下面分析各个子系统的功能需求。.1 前台前台在前台的功能
31、实现上,可以分为以下几个部分:1).1).用户登录:9 / 35 用户用个人注册的,密码登录到。检测用户的,密码并给予其相应的权限对进行操作。2).2).用户注册:游客将个人的信息存储到博客的数据库中,以成为本博客的正式用户。3).3).用户修改个人信息:把已存储的用户信息用一个网页显示出来,方便用户对个人信息进行更新。4).4).文章查询和留言:用户可以检索或浏览博客中的文章同时给感兴趣的文章。5).5).公告信息查询:用户可以浏览中发布的公告信息,了解博客的一些情况。6).6).相片查询:用户可以对博客中的相片,图片等进行查询,浏览。.2 后台后台通过计算机网络将前台与后台
32、的数据库相连,管理员将从前台得到的信息进行处理,实现文章管理,公告管理,投票管理,个人相册管理,朋友圈,用户设置与博主设置等子系统。1).1).文章管理: 管理员对中已有的文章进行删除,更新等操作。2).2).公告管理: 发布,删除,更改公告。3).3).投票管理: 发起投票,统计投票等。4).4).个人相册管理: 对博客相册中的图片进行删除,更新等操作。5).5).用户设置:更新普通用户对博客的操作的权限。6).6).博主设置:对博主的信息等进行操作。2.32.3 系统的性能需求系统的性能需求博客的特性要求博客系统需要具备以下几个主要特性:1).1).多样性: 博客在设计时必须遵循的一个重要
33、原则,就是以用户为系统设计的中心。网络的发展大大降低了信息咨询的成本,用户面临更多的选择,所以,博客除了降低成本以外,还必须在皮肤,功能的多样性上下工夫,才能够得到用户的认可。具体来说,应用系统应能实现用户特定的需求,操作界面友好、方便,功能设置符合用户的习惯和要求。2).2).易维护:管理员能够简单方便地管理系统,定义新的应用,并对系统进行日常维护;随着博客信息的变更或增加、数据规模的增大,系统升级、维护应易于操作;各子系统、功能模块的设计应具有良好的10 / 35灵活性,保证在博客系统建设过程中后期系统功能的实现不影响前期已投入使用的系统功能。3)3).安全性:系统应充分考虑信息、设备、运
34、行和管理的安全性,建立完善的多层次的安全保障体系,保证用户的个人信息等资料的数据安全。4).4).可扩展: 博客的用户从事着各种行业,他们的需求各不一样,系统在设计时应充分考虑到用户需求不断变化的需要,降低系统在扩展新的业务功能时的复杂度。2.42.4 系统的数据需求系统的数据需求.1 系统的数据需求包括如下几点:系统的数据需求包括如下几点:1.1. 数据录入和处理的准确性和实时性数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。数据的输入来源是用户的手工输入。手工输入要通过系统界面上的安排系统具有容错性,并且对用户操作进行
35、实时的跟踪和错误提示。在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。2.2. 数据的一致性与完整性由于的数据是共享的,所以如何保证这些数据的一致性,是必须解决的问题。要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,应该拒绝该数据。3.3. 数据的共享与独立性 整个博客的数据是共享的。然而,从开发的角度上看,共享会给设计和调试带来困难。因此,应该提供灵活的配置,使各个分系统能够独立运行,而通过人工干预的手段进行系统数据的交换。
36、这样,也能提供系统的强壮性。.2 系统的数据字典系统的数据字典中的数据元素:名字:用户信息别名:描述:用户的个人信息,用于对用户的确认和更新。定义:用户信息=XX+密码+XX+性别+工作单位+ 号码+邮箱号码位置:输入到用户浏览器(前台)名字:管理员信息别名:描述:管理员的个人信息,用于对管理员的确认和更新。定义:管理员信息=XX+密码位置:输入到管理员浏览器(后台)11 / 35名字:评论信息别名:描述:对已有文章进行评论。定义:评论信息=评论题目+评论内容+评论日期位置:输入到用户浏览器(前台)名字:文章类型信息别名:描述:用于对文章进行分类。定义:用户信息=类型名称+分类
37、说明位置:输入到用户浏览器(前台)名字:朋友圈信息别名:描述:用户的个人信息,用于对用户的确认和更新。定义:朋友信息=XX+ 号码+说明位置:输入到用户浏览器(前台)名字:照片信息别名:描述:用户上传的照片,图片等。定义:照片信息=照片位置+照片说明+日期位置:输入到用户浏览器(前台)名字:投票信息别名:描述:定义:投票信息=投票分类+投票数量位置:输入到用户浏览器(前台)12 / 352.52.5建立系统的约束建立系统的约束个人博客做为 Browser/Server 结构的一个应用系统,不可避免的要受到 Browser/Server 结构的约束。在其实施的各个阶段都要服从它的一些规划,包括功
38、能设计、系统配置和计划。.1 人力、资金、时间的约束人力、资金、时间的约束 个人博客实施的目标就是要为网络用户提供进行在线交流的网络平台,其开发过程中也要考虑到人力、资金和时间的约束。因此,在设计中,重点是博客系统中良好的人机交互界面,能提供给用户以优质高效的服务。.2 技术发展规律的约束技术发展规律的约束 计算机技术和产品的发展日新月异,将会给信息处理带来更多的手段,同时也会带来更加丰富的信息表达形式。例如图象和语音技术的进步,多媒体技术的发展,这些都要求博客在设计时考虑技术变化的可能性,为可能的变化预留一定的系统处理能力。13 / 35第三章第三章 概要设计
39、概要设计博客系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的博客,以达到个人推荐、展现自我的一个平台,为交流提供综合的网络环境,同时也为个人的宣传,发展,提供了一个平台。3.13.1 系统体系结构系统体系结构基于 B/S 结构的个人博客系统,应由终端(用户主机/浏览器) 、WEB 服务器、数据服务器构成。个人博客的核心是中间的接入服务器和应用服务器部分。个人博客的总体结构图如图 3.1 所示:WEBWEB服务器服务器(web(web Server)Server)数据用数据用 服服 务务
40、 器器PC图3.1 博客总体结构3.23.2 主要功能设计主要功能设计.1 主要功能模块主要功能模块1.博客注册登录管理模块.2.博客即文章检索查询模块.3.博客页面显示模块.4.博客管理模块.5.留言显示检索模块.系统实现的物理结构如图所示:14 / 35注册登陆管理模块文章检索查询模块页面显示模块留言显示检索模块管理模块图 3.2 系统各模块关系图.2 系统流程图系统流程图前台: 图 3.3 前台系统流程图后台:图 3.4 后台系统流程图15 / 3.3 系统模块介绍系统模块介绍1.1. 博客注册登录管理博客注册登录管理本模块实现新用户注册
41、,登录功能。其中,注册新用户时会对用户输入的注册信息进行有效的验证,包括基本数据格式的有效性,以与逻辑有效性,例如:用户名被占用时给出提示。注册成功登录时会对博客输入的信息进行提示,如用户名、密码错误。同时在注册时还用到了验证码技术,防止恶意注册!2.2. 博客文章查询显示管理博客文章查询显示管理本模块用于帮助网络用户快速定位到自己关注的博客页面与对应的文章信息中。在本模块中提供了最新文章推荐,还提供了按容或标题等关键字快速查询所需文章信息3.3. 发表文章管理发表文章管理该模块实现了博主发表新文章的功能。博主发表文章时,可以选择文章所属类别,此外只有是博主才能发表文章,对此进行了严格的身份验
42、证。4.4. 发表与显示评论管理发表与显示评论管理该模块实现了与文章相关的评论管理。只有注册成本站用户才能对文章进行发表评论。5.5. 留言显示与查询管理留言显示与查询管理实现了查看用户留言和查询用户/文章的管理,用户可以检索或浏览博客中的文章同时给感兴趣的文章。3.33.3 数据库设计数据库设计一个设计良好的数据库,可以使系统的实现变得非常的简单。同时,也可以使系统的执行速度变得很快。反之,一个设计混乱的数据库,不仅增加了吸引的管理实现过程,同时在系统的执行过程中,使得检索变得很慢,降低效率。所以数据库的设计是一个系统设计很重要的步骤。根据系统功能设计要求和模块划分,本站的数据库主要有用户信
43、息、文章信息、管理员信息、照片信息、文章类型信息、评论信息、投票信息、朋友圈视图。数据库的设计通常是以一个已经存在的数据库管理系统为基础的,常用的数据库管理系统有Access、SQL Server、Oracle、My SQL 等。根据用户需求和系统分析,本系统采用 SQL Server2000 数据库管理系统。在 SQL Server2000 数据库管理系统中建立名称为博客的数据库。1)管理员信息表如图 3.5:表 3.5 管理员表2)文章信息表如图 3.6:16 / 35图 3.6 文章表3)评论信息表如图 3.7:图 3.7 评论表4)文章类型信息表如图 3.8 所示:图 3.8 文章类型
44、视图5)用户信息表如图 3.9 所示:图 3.9 用户视图6)朋友圈信息表如图 3.10 所示:17 / 35图 3.10 朋友圈视图7)照片信息表如图 3.11 所示:图 3.11 照片视图8)投票信息表如图 3.12 所示:图 3.12 投票视图3.43.4 信息安全设计信息安全设计网络的开放性导致网络技术的全面开放,任何团体和个人都可以获得网络资源,因而网络所面临的破坏和攻击将会是多方面的,可以是对软件环境实施攻出,也可以是对硬件环境实施攻击。网络的国际性还意味着网络的攻击将不仅仅来自本地网络用户,它可能来自 Internet 上的任何一台机器。即,发起攻击的节点可以位于世界上任何地方。
45、因此可以说,网络安全所面临的将是一个国际性全球化的挑战。网络的自由性意味着网络最初对用户的使用并没有提供任何的技术约束,用户可以自由地访问网络,自由地使用和发布各种类型的信息。用户只对自己的行为负责,而没有受到任何的法律限制。如何保护个人的信息不受木马和病毒的入侵,己成为信息安全化健康发展所要考虑的重要事情之一。博客用户个人信息的安全问题是至关重要的,制定切实可行的安全策略和实施有力的防手段是非常必要的。系统的安全体系由下述结构组成,如图 4.13 所示。18 / 35图3.13系统的安全体系结构.1 网络安全网络安全Jsp 技术虽然比较安全,但还是存在着很多安全上的问题的,客
46、观的说,服务器软件的开发商在部测试中不可能将系统中的所有 bug 找出来,即使发布了软件后,被发现的漏洞也只会是其中的很小一部分,将来还会不断的有新的安全问题出现,所以我们必须时刻提高警惕。服务器的操作系统要打好补丁,进行安全权限的设置,并安装好防火墙,杀毒软件等,定时对数据进行备份。.2 其他安全其他安全环境安全是整个系统安全的基础,要把信息泄露的危险减至最低限度,需要选择适当的设施位置,要充分考虑水灾、地震、电磁干扰与辐射以与其他等人为威胁,保证净化电源等等。物理安全也是整个系统安全的基础设置之一,物理安全涉与以系统中微机和主机、服务器等资源的房间,必须进行严格的管理。19
47、 / 35第四章第四章 详细设计详细设计详细设计是整个系统设计中,最重要的一个步骤。下面对系统得主要模块进行详细的介绍。4.14.1 首页面与主要页面设计首页面与主要页面设计主要页面如 表 4.1 主要页面清单表所示:表 4.1 主要页面清单表文 件 名说 明Index. jsp普通用户登录页面,用户只要输入已注册的和密码head_Consumer.jsp用户信息页面head_photoSelect.jsp相片查询页面head_consumerUpdate.jsp新用户注册页面head_disussForm.jsp评论信息查询页面back_PhotoInsert.jsp相片上传页面backMa
48、inPage.jsp系统管理页面head_explain.jsp满意监督中心页面head_main.jsp文章显示界面(包含文章搜索)4.24.2 功能模块设计功能模块设计功能的详细划分如表 4.2 所示:表 4.2 功能详细划分表功能设计划分具体功能备注首页(head_main.jsp)通过点击不同的导航进入不同的页面文章列表通过点击查看全文进入全文显示页面文章分页一页显示 5 篇文章发表留言点进进入留言页面加好友本功能暂未实现写文章只有管理员才能发表文章阅读数评论数文章(head_ArticleList.jsp)发表评论只有注册为会员才能发表评论留言留言显示20 / 35(head_dis
49、ussForm.jsp)留言发表用户管理可查看、删除用户文章管理可修改、删除文章后台管理(adminmanager.jsp)留言管理进入留言页面进行留言管理相册(photo.html)存储相片,图片1) 用户查看文章流程如图4.1所示:验证身份登陆查看文章,发表评论返回登陆或注册YN结束图4.1 用户查看文章流程图2) 管理员操作流程如图4.2所示:验证身份登陆执行管理员操作YN结束图4.2 管理员操作流程图4.34.3 系统实现系统实现本系统主要包括用户登录、用户注册、全部文章显示、文章详细信息查询、评论信息查询、相册、公告、系统管理(包括文章管理,评论信息管理,公告管理) 、八大模块。以下
50、是各功能模块的具体实现过程。整个系统的框架如图 4.3 所示。21 / 3.1 博客前台首页博客前台首页 head_main.jsphead_main.jsp 详细功能与部分代码详细功能与部分代码1).1).用户个人信息2).2).显示文章的目录与文章部分容3).3).提供了文章的发表日期,阅读过此文章的人数和评论过的人数4).4).到达说明,公告,相片,博主的主5).5).网络日历6).6).最新公告的主要容7).7).进入投票界面的8).8).进入后台管理界面的博客系统的前台首页如下图 4.4 所示:22 / 35图 4.4 个人博客系统首页主要代码如下:前台-首页 /调
51、用 head_top.jsp % List list=articleTypeDao.queryArticleType(); for(int i=0;i23 / 35 a href=head_ArticleList.jsp?typeId= %for(int articleI=0;articleI100)articleContent=articleContent.substring(0,100)+.;%href=head_ArticleForm.jsp?id= class=head-02阅读全文>> | 阅读() | 
52、;回复() 24 / 3.2 评论信息查询评论信息查询 head_disussList.jsphead_disussList.jsp 详细功能与部分代码详细功能与部分代码评论信息查询模块显示了对博客中的文章的评论的详细容,日期等。通过从数据库调用评论信息编号,显示在页面上,点击查看全文可以查看全部评论容和发表评论时间。页面如 4.5 图所示:图 4.5 评论信息显示主要代码实现如下:前台-评论信息查询!-body background-image: url(images/bg_01.gif);25 / 35 %out.println( &nb
53、sp; +discussForm.getDiscussTitle()+);% 26 / 3.3 系统管理系统管理 backMainPage.jspbackMainPage.jsp 详细功能与部分代码详细功能与部分代码本模块是系统后台管理模块,管理员通过登录进入管理页面,可对前台信息进行修改、删除等操作。具体功能如下:1).1).发表博客文章与对文章类型等进行设置。2).2).设置公告的容与形式。3).3).设置投票的容与形式。4).4).设置个人相片的容与形式。5).5).朋友信息的容添加与设置。6).6
54、).最新公告的主要容。7).7).用户信息,权限等设置。8).8).博主的个人信息的设置。如图 4.7 所示:图 4.7 系统管理页面主要代码实现如下所示:27 / 35博客天空-后台管理 发表博客文章 这里提供最方便的方式来发表你的博客文章,由你选择。 公告添加 这里提供最方便的方式来发表你的公告,由你选择。 相片添加 这里提供最方便的方式来上传你的照片,由你选择。 投票容添加 这里提供最方便的方式来设置你的投票容,由你选择。 28 / 35 博主设置 这里提供最方便的方式来设置你自己的个人信息,由你选择。 好友添加 这里提供最方便的方式来设置你好友信息,由你选择。 用户设置 这里提供最方便的方式来管理可以登录你的博客用户,由你选择。 本系统还有用户登录、注册等模块在此就不一一介绍了。29 / 35第五章第五章 遇到的难点和解决方法遇到的难点和解决方法JSP 技术源于 Java 语言。Java 语言是体系结构中立的。这使 JSP 技术可以在实现这个 JSP 平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。但这同时产生一个问题,就是环境搭建的复杂。在环境搭建过程中首先是 JDk 的配置。就是在安装完成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024物流金融、信用保险服务合同
- 2025年度市政道路改造工程设计与施工总承包合同书3篇
- 2025年IDC机房租赁合同及网络安全评估协议3篇
- 二零二五版金融租赁合同抵押担保与租赁资产处置协议2篇
- 2025厂房升级改造与设备更新一体化合同3篇
- 2024跨区域绿色能源开发与合作框架合同
- 2025版韵达快递业务承包及运营合同3篇
- 幼儿园2025年度绿化维护服务合同2篇
- 二零二五年房车托管与户外运动俱乐部合作合同3篇
- 个人二手手机买卖合同(2024版)2篇
- 【传媒大学】2024年新营销
- 乳腺癌的综合治疗及进展
- 【大学课件】基于BGP协议的IP黑名单分发系统
- 2025届广东省佛山市高三上学期普通高中教学质量检测(一模)英语试卷(无答案)
- 自身免疫性脑炎课件
- 人力资源管理各岗位工作职责
- 信阳农林学院《新媒体传播学》2023-2024学年第一学期期末试卷
- 2024建筑公司年终工作总结(32篇)
- 信息安全意识培训课件
- 2024年项目投资计划书(三篇)
- 配电安规课件
评论
0/150
提交评论