基于jsp的博客系统.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于jsp的博客系统.doc》由会员分享,可在线阅读,更多相关《基于jsp的博客系统.doc(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目 录1 引言12 概 述12.1 博客的概念22.2 博客的发展现状22.3 Web技术的发展32.4 研究现状32.5 开发技术43 需求分析63.1 系统目标63.2 系统的功能要求73.3 系统的性能需求83.4 系统的数据需求93.5 系统开发工具94 总体设计114.1 系统功能模块图114.2 系统模块功能描述134.3 数据库设计145 主要模块详细设计215.1 博客首页模块215.2 个人博客主页模块305.3 后台管理功能模块356 遇到的难点和解决方法376.1 JAVA环境的配置376.2 图片上传37结 论39致 谢40参考文献411 引言在网络技术逐渐渗入社会生活
2、各个层面的今天,传统的交流方式也面临着变革,而网络博客则是一个很重要的方向。基于Web技术的博客系统可以借助于遍布全球的Internet进行,因此交流既可以是本地进行,也可以是异地进行,大大拓展了沟通与交流的灵活性。博客在现如今这个飞速发展的网络时代已经成为人们不可或缺的一部分,博客,又译为网络博文、部落格或部落阁等,是一种通常由个人管理、不定期张贴新的文章的网站。博客上的文章通常根据张贴时间,以倒序方式由新到旧排列。许多博客专注在特定的课题上提供评论或新闻,其他则被作为比较个人的日记。能够让读者以互动的方式留下意见,是许多博客的重要要素。大部分的博客内容以文字为主。博客是社会媒体网络的一部分
3、。博客是WEBLOG的缩写,是继Email、BBS、ICQ之后出现的第四种网络交流方式,是网络时代的个人“读者文摘”,是以超级链接为武器的网络日记,代表着新的生活方式和新的工作方式,更代表着新的学习方式。具体说来,博客(Blogger)这个概念解释为使用特定的软件,在网络上出版、发表和张贴个人文章的人。 一个Blog其实就是一个网页,它通常是由简短且经常更新的帖子所构成,这些张贴的文章都按照年份和日期倒序排列。许多Blogs是个人心中所想之事情的发表,其它Blogs则是一群人基于某个特定主题或共同利益领域的集体创作。 博客秉承了个人网站的自由精神,但是综合了激发创造的新模式,使其更具开放和建设
4、性。它作为一种新表达的方式,它的传播不仅情绪,包括大量的智慧、意见和思想。某种意义上说,它也是一种新的文化现象,博客的出现和繁荣,真正凸现网络的知识价值,标志着互联网发展开始步入更高的阶段。博客在中国发展很迅速,建立一个专业的博客管理系统已经很重要。2 概 述对个人而言,博客可以调动个人的积极性,充分发挥个人的创造性。从2002年开始,国内博客开始迅猛发展起来,从最初的只有几千个尝鲜者到现在的各式各样的博客,圈子。在这三年的发展过程中,主要呈现出如下几个特点:1) 博客是可以将个人信息完整呈现在互联网上的载体。2) 博客具有“准实名制”趋势,有助于信任机制的建立。本文就此探讨了我国博客发展的几
5、个要素。2.1 博客的概念博客是WEBLOG的缩写,简单来说就是网络日记。它是1997年12月由美国的JornBarger最早提出的,这些年全球博客获得了突飞猛进的发展。据博客搜索Technorati统计,目前全球平均每5.8秒钟诞生一个博客。它是一个新型的个人互联网出版工具,博客使用者可以很方便地用文字、链接、影音、图片建立起个性化的网络世界。博客秉承了个人网站的自由精神,但是综合了激发创造的新模式,使其更具开放和建设性。它作为一种新表达的方式,它的传播不仅情绪,包括大量的智慧、意见和思想。某种意义上说,它也是一种新的文化现象,博客的出现和繁荣,真正凸现网络的知识价值,标志着互联网发展开始步
6、入更高的阶段。2.2 博客的发展现状2006年11月3日,全球中文博客站点数量达到5230万,博客用户数达到1987万,平均每个博客用户拥有大约2.6个博客,博客站点数和博客用户数均比前一年有一定程度的增长,人均拥有博客数与前一年相比也略有上升。2006年,拥有独立域名的博客站点,在博客站点总数中占约0.43%,这表明,绝大多数的用户将博客服务商作为他们的博客站点首选。而这一年,中国大陆博客服务商(BSP)持续大幅增长,博客服务商数量达到1460家,与去年同期相比增长近55%;大型网络公司如搜狐、百度纷纷推出相应的博客服务,而新兴的博客服务站点如也开始崭露头角。过去一年中,中国博客发展速度整体
7、趋缓,博客用户增长数较之去年有小幅上升,博客服务商之间的市场竞争日趋激烈,与早期提供博客服务的运营商相比,传统门户及大型公司的博客服务已占据市场主导地位。总体而言,2006年中国博客发展呈现5大特点:专业博客如医药类、教育类等增长较快,博客圈成为社区发展新方向;博客服务商(BSP)死亡比例逐渐增高,2005年Top100服务商中,近20%的站点已经关闭或终止服务;博客服务商(BSP)开始逐渐支持手机访问和发贴,发展迅速;综合博客服务商(BSP)增长很快,越来越多的服务商开始提供音频、视频博客等功能;利用博客进行排名作弊的站点越来越多,06年出现爆炸性增长,其中小型博客服务商(BSP)尤为突出。
8、现今,博客网站已经由06年的风风火火变的平淡,通过各种方式融入了我们的生活,成为了我们表现自己的主要方式。它们大部分是由简短而且经常更新的帖子构成,所有文章都是按照年份和日期排列。看上去平淡无奇,毫无可炫耀之处,但它让每个人零成本、零维护地创建自己的网络媒体,每个都可以随时把自己的思想火花和灵感更新到博客站点上。个人博客目前面临的主要问题:由于文化市场监督的不利,势必会造成一些淫秽的内容广泛传播于网路,这就需要文化部门的有力监督。2.3 Web技术的发展1991年,欧洲粒子物理研究所(CERN)的软件工程师Tim Berners-Lee发布了他的万维网(World Wide Web)。从此以后
9、,通过互联网看到的将不仅仅是文字,互联网有了图片,后来又有了音频、动画甚至视频。WWW的成功在于它制定了一套标准的,易于掌握的超文本标记语言HTML、信息资源的统一定位格式URL和超文本传输协议HTTP,用超链接和超媒体把Internet上各种相关数据有机地链接起来,使互联网上的资源实现了共享。你只需要点击鼠标就可以浏览来自世界各地的丰富的、直观的信息,一个不懂电脑的人也可以很快成为Internet 行家。开始的web页面都是静态文本,页面呆板,互动性不强,但是随着技术的发展,很快各种各样的动态网页技术涌现出来,这其中包括CGI、ASP、PHP、Java,脚本语言如:JavaScript, V
10、BScript等等。JavaScript 和 VBScript可以嵌入在HTML中实现一些客户端的动态功能;CGI大大扩展了Web服务的功能,可以实现web服务器与数据库及文件系统、应用程序的通信,动态生成超文本,于是网页活了起来。但CGI的运用需要具有一定的编程能力及算法技巧,而且与HTML要分开编写,维护和编写都比较困难,效率和安全性也不好。 ASP, PHP克服了这些缺点,获得了广泛的应用。Java的出现给Web带来了新的活力。它具有完全的平台无关性,一次编写处处运行,用Java可以编写web页中执行的小程序Applet。它简单、面向对象、安全、健壮、分布式等优点特别适合开发web应用。
11、在美国,JSP+ Servlet+ EJB已经成为电子商务网站的开发标准。2.4 研究现状现今,博客网站已经由06年的风风火火变的平淡,通过各种方式融入了我们的生活,成为了我们表现自己的主要方式。它们大部分是由简短而且经常更新的帖子构成,所有文章都是按照年份和日期排列,有些类似斑竹的日记。看上去平淡无奇,毫无可炫耀之处,但它可以让每个人零成本、零维护地创建自己的网络媒体,每个都可以随时把自己的思想火花和灵感更新到博客站点上。现在的博客网站的主要特点:零机制:博客属于个人所有,是自发建立和非正式的建设。BSP不能对博客发号施令。 零技术:博客不需要作网站的专业知识,可以像发邮件一样简单地实现博客
12、网页的呈现。技术的极度简化,包括架构和申请博客网站、编辑、上传和修改内容等。 零成本:任何一个人都可以像申请免费邮件般免费申请自己的博客网站。不需要注册域名的成本,不需要租用服务器空间的成本,不需要许多软件工具的成本。 零编辑:博客用户就是编辑,即时写作、即时发布、自我检查。这形成了与传统写作截然不同的“体验”,真正实现了作者“零磨损”的开放式写作。 零形式:博客页面的表现形式和文章内容的表现方式十分灵活,没有特定形式。 与个人主页相比较,博客是使用方便的、交互性强。与传统的电子邮件、BBS和ICQ这三种互联网沟通方式相比,博客是一种较严肃的沟通平台。BBS公共匿名性很强,而个人性很弱,因此缺
13、乏约束。电子邮件和ICQ则是多用于个人间的通讯,而博客是个人性和公共性的结合。博客是个人在网上展示自己、与别人沟通交流的综合平台,它的管理比BBS简单的多。2.5 开发技术一些人可能已经对微软的Active Server Pages(ASP)很熟悉了;JSP在多数方面与ASP功能相同但是具有平台无关特性。他们都用来帮助Web内容的开发者们使用相对少的代码创建动态的网页。JSP页面的内置脚本语言基于Java编程语言,而且所有的JSP页面都被编译成为Java Servlet,所以JSP页面具有Java技术的所有好处,包括健壮的存储管理和安全性;作为Java平台的一部分,JSP拥有Java编程语言“
14、一次编写,各处运行”的特点。当客户端请求一个JSP网页时,JSP Engine会检查所请求的JSP网页是否已经处于被载入执行的状态,如果没有,它会先读取JSP程序文件,将它换成Servlet程序代码编译载入,然后才执行请求的服务。也是就说,只有当客户端第一次请求JSP网页时,才需要被转换、编译和载入,做到了一次执行,处处执行。JSP的Servlet Class是JSP Engine自动帮我们编译产生的,不像Servlet需要手动编译。2.5.1 JSP的基础Servlet 技术Java Servlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应
15、用程序的开发需要Java Servlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会,本文直接采用Servlet这个名称而不做任何翻译,读者如果愿意,可以称之为“小服务程序”。许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应用服务器和模块来支持Servlet。得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合Java Servlet规范,Servlet是完全平台无关且是Web服务器无关的。由于Java Servlet内部是以线程方式提供服务,不必对于每个请求
16、都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此Java Servlet效率非常高。但Java Servlet也不是没有缺点,Java Servlet是利用输出HTML语句来实现动态网页的,如果用Java Servlet来开发整个网站,动态部分和静态页面的整合过程简直就是一场噩梦。这就是为什么SUN还要推出Java Server Pages的原因。2.5.2 MVC设计模式MVC是三个单词的缩写,分别为:模型(Model),视图(View)和控制(Controller)。 MVC模式的目的就是实现Web系统的职能分工。Model层实现系统中的业务逻辑,通常可以用JavaBean或
17、EJB来实现。View层用于与用户的交互,通常用JSP来实现。Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。1) 视图视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括Macromedia
18、 Flash和象XHTML,XML/XSL,WML等一些标识语言和Web services。如何处理应用程序的界面变得越来越有挑战性。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。2) 模型模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和ColdFusion Components这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模
19、型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。3) 控制器控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。2.5.3 EL表达式EL 全名为Expression Language,它原本是JSTL1.0为方便存取数据所自定义的语言。JSP 2.0 之后,EL 已经正式纳入成为标准规范之一,因此,只要是支持Servlet 2.4 / JSP2.0 的Container,就都可以在JSP 网页中直接使
20、用EL 了。1) EL 语法结构$expression2) 与.运算符 EL 提供“.”和“ ”两种运算符来存取数据。当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用“ ”。例如: $user. My-Name应当改为$userMy-Name ,如果要动态取值时,就可以用“ ”来做,而“.”无法做到动态取值。例如: $sessionScope.userdata中data 是一个变量。3) 变量EL存取变量数据的方法很简单,例如:$username。它的意思是取出某一范围中名称为username的变量。因为我们并没有指定哪一个范围的username,所以它会依序
21、从Page、Request、Session、Application范围查找。假如途中找到username,就直接回传,不再继续找下去,但是假如全部的范围都没有找到时,就回传null。属性范围在EL中的名称:Page:PageScopeRequest:RequestScopeSession SessionScope Application ApplicationScope3 需求分析3.1 系统目标博客网站系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,开发一个具有开放体系结构的、具有良好人机交互界面的博客网站,为网络用户提供进行在线交流的网络平台。通过博客网站可以结交更
22、多的朋友,表达更多的想法,它随时可以发布文章。具体的要求如下:1) 博主可以简单的添加和删除文章和照片。2) 独立于具体的数据库平台。对于与数据库交互的部分充分考虑兼容性。3) 中间基础平台的无型性。尽量采用开放的标准技术,达到跨平台运行的效果。为了达到以上的开发目的,博客网站应遵循一定的设计和开发与原则:1) 模块接口定义清晰。2) 基础类库和接口设计合理,尽量建立叮扩展的接口和抽象类。3) 数据库操作使用标准SQL语句,如果一定要使用有差别的SQL语句,则尽量集中在一起,以减少将来维护和移植的难度。4) 采用开放的标准和工具等。3.2 系统的功能要求博客系统通常提供六类服务:信息服务,它可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 jsp 博客 系统
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内