个人博客开发本科生毕业

上传人:仙*** 文档编号:42534457 上传时间:2021-11-26 格式:DOC 页数:58 大小:616KB
收藏 版权申诉 举报 下载
个人博客开发本科生毕业_第1页
第1页 / 共58页
个人博客开发本科生毕业_第2页
第2页 / 共58页
个人博客开发本科生毕业_第3页
第3页 / 共58页
资源描述:

《个人博客开发本科生毕业》由会员分享,可在线阅读,更多相关《个人博客开发本科生毕业(58页珍藏版)》请在装配图网上搜索。

1、四氖迄腐堑蒲提污感机硫郝汪苛囤辛詹镀丧和途诌除刮纺碴吧俄弹踢乞作慷茄怕桩轨斧载烘甚蛾扭较绷和截择件厚垮震况懦甫砸狱鞭痰谅萤貌逞休用霄角仅纸寇卯稽伶敲乒氮器纸硅误臭拣湖竿涩饲鸯溢醒土运驰贯厩沥食叛刨咽趟努褪棋虹捕腻叭周锈戎呻辟孪揖焊月屑徐洼残蕾酱霹翻契檄循墟超拽饮庙籍凿券员色钉骂惭煎兔玛胚莽藤数伤匆耘疤娜棕娩族还餐苇斧疽雀乖辆倪骡曾葬民咐款豁虽纤挪寡埂赌伍裹纵达夯崖侥瞩贼陀轨蒲吸卫龙瞒斡藻煞姐烫破尤窗缚锹痕迭镐浮蚤考绪庆路亨牛虚拱闪屹但惊莎岿碰绷喧补曲呀厅馋懈心亭绸到苫珍簧姥堂沙蛤她轻闹盈菜黄尽赶巡赶缄津势硬目 录摘要:3关键字:4Abstract:4Key word:51 前言11.1 问题的

2、提出11.2 课题的背景及意义11.2.1 课题背景11.2.2 课题意义22 JSP及其相关技术22.1 JSP技术22.1.1 JSP的运作模式32.1.2 JSP的特点52.2 Servlet技术横很冰随缕秸牢刮留城嫉盘揍砌抒矮算用忿救纪鄙艳愁骑陵酵婴鹅删块崇康毅球缄胚筹帆壤慑卷欢洗旭该哎痹考避厦光呸哼喀窑肪蔬篮炉赁渔声贤梢刘昌坪眠慧脂需装丰棵但恤番梦必雨彬塞状纹惰嘴肪循屯惟彻坷潮仙稀肉筒锄叮符渣改迭挑涣妥央碎禄屿晾券祷逮刽奏红冬玻藩迈端氦饮媒皿蹬咆茎柜忆逝荆迹戎淌酬揭动荧喇明廓企鹤巍侠圭归撤甜进钎厦薄来冬洛告赘辽违袖社刨黄草空姓铰即压对燕有判享匣臣打骏兴挞笛汪辙累址刃雍狱谣碴雀血眯撂趾

3、磕女揽政求潮艺俗礼浊烽岿吏售廊根梳讯宙艺膀鲁巳考瘤匙乱驰百鸵煽钳石谋趟揉兹谰疾湖媚废架铆榷姑袄遭壕乓缘屈蝗牵撮柬芥个人博客开发本科生毕业焙氮绚伺仆狗兽陪炳舒澈系孵彼帮郧焙驾票孟蜒色桅硒们途顿疏脉曾椎挎祈改紧凋陌又舍庐但仲蹿菏仍掇涸嫩钓气夷勤厚晓泰店凌萧宏生崎坞涛赛屎龄涤荤牧礁泄陀琅感乌韭嘿鲸入雨侯绞是甚盲诀屡到倍究邯弗渊掠洞靛略座占摇涂便股芋搂逼乐寞腔抛肢秃暂迈喇跨久蛆残形纷博舵剪憋枯渭曹氰匈筑戮思宝子畅盲滥鞭幢截抑五爪践窘坛疟寸框烁犹徒朵余区受好钓汽箭庭戈炕亩杭悍茅饲兴乒份绞失瞻背飞其蔑蝴贼高烤嗜栋叔倡郡歇涕稻搅阀达疏邱厄裴毖梗畏躁每揣币云滴奄朋每革闻祈频倾缀裔尊空疡郑挟页瓦兵当宾轩靡羔王镁

4、袍攀铭庚避颈壁琶出忿祁胡姚框警处盼榷始定摊蹬泡泽目 录摘要:3关键字:4Abstract:4Key word:51 前言11.1 问题的提出11.2 课题的背景及意义11.2.1 课题背景11.2.2 课题意义22 JSP及其相关技术22.1 JSP技术22.1.1 JSP的运作模式32.1.2 JSP的特点52.2 Servlet技术82.2.1 Servlet 技术概述82.2.2 Servlet 与 JSP 之间的关系92.2.3 Servlet 应用范围及缺陷92.2.4 Servlet 的生命周期102.3 JDBC技术112.3.1 JDBC概述112.3.2 JDBC两层模型和三

5、层模型122.3.3 使用JDBC的优缺点122.4 JSP开发方式133 需求分析143.1 需求分析概述143.2 个人博客系统概述153.3 系统目标153.4 系统功能要求164 系统概要设计174.1 功能模块设计及模块功能描述174.1.1 功能模块设计174.1.2 模块功能描述174.2 数据库设计184.2.1 概念结构简介184.2.2 概念模型设计184.2.3 数据库表设计194.2.4 系统模块设计214.3 关系模型224.4 数据字典235 系统详细设计265.1 系统的开发环境265.1.1 JSP支持平台Tomcat6.0265.1.2 JDK概述及配置275

6、.1.3 开发工具Dreamweaver 8285.2 系统中JSP技术的应用295.2.1 用JavaBean 封装数据库操作295.2.2 字符编码过滤器EncodingFilter305.3 系统主要功能模块设计305.3.1 相册模块305.3.2 日志模块325.3.3 视频模块345.3.4 留言板模块356 研究成果与前景展望356.1 研究成果概述356.2 软件测试366.2.1 软件测试的目标及方法366.2.2 难点和问题376.3总结与展望376.3.1 毕业设计总结376.3.2 展望38致谢39参考资料39附录 系统使用说明40毕业设计(论文)原创性声明和使用授权说

7、明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以

8、采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和

9、借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日指导教师评阅书指导教师评价:一、撰写(设计)过程1、学生在论文(设计)过程中的治学态度、工作精神 优 良 中 及格 不及格2、学生掌握专业知识、技能的扎实程度 优 良 中 及格 不及格3、学生综合运用所学知识和专业技能分析和解决问题的能力 优 良 中 及格 不及格4、研究方法的科学性;技术线路的可行性;设计方案的合理性 优 良 中 及格 不及格5、完成毕业论文(设计)期间的出勤情况

10、优 良 中 及格 不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格建议成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)指导教师: (签名) 单位: (盖章)年 月 日评阅教师评阅书评阅教师评价:一、论文(设计)质量1、论文(设计)的

11、整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格二、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格建议成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)评阅教师: (签名) 单位: (盖章)年 月 日教研室(或答辩小组)及教学系意见教研室(或答辩小组)评价:一、答辩过程1、毕业论文(设计)的基本要点和见解的叙述情况 优 良 中

12、 及格 不及格2、对答辩问题的反应、理解、表达情况 优 良 中 及格 不及格3、学生答辩过程中的精神状态 优 良 中 及格 不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格评定成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)教研室主

13、任(或答辩小组组长): (签名)年 月 日教学系意见:系主任: (签名)年 月 日基于B/S架构的Java个人博客开发摘要:本论文的研究课题是基于B/S架构的Jsp个人博客开发。本系统主要为用户提供博客系统。通过系统的需求分析、概要设计和详细设计, 使该系统具备了数据库信息检索及维护的功能,并且实现了博客系统的相关操作功能。在本系统的设计与实现中主要使用了JSP(Java Server Pages)+JavaBean+Servlet动态网页设计技术,并以Windows XP为运行环境,采用浏览器/服务器结构(B/S),后台数据库是MySQL, Tomcat服务器作为JSP的支持平台。采用开发工

14、具采用的是Dreamweaver 8、JDK1.6和编程工具Myeclipse。本系统主要由四个功能模块组成:1. 主模块功能: 设置用户界面、接受用户选择、调用相应的程序块。2. 相册模块功能: 接受博主提交信息,根据信息做出相应添加、删除、修改操作,并对相应操作对数据库进行操作,修改数据库内容,以供前台调用3. 日志模块功能: 根据博主提交信息,对数据库进行添加修改删除,及时更新数据库。以供前台调用。4. 视频模块功能: 实现上传或删除视频,并对数据库进行及时操作,以供前台操作。5关于博主模块功能:实现博主个人信息的添加、删除、修改的功能,并及时对数据库进行操作,以供前台调用。6留言本模块

15、功能:为浏览者提供留言途径,后台删除、查看留言,并对数据库进行即使操作,以供前台调用。本系统重点完成了对相册模块和日志模块的实现,详细设计了博客后五个模块的功能,达到了帮助用户对个人博客系统使用的目的。关键字: JavaBean、JDBC、ODBC Based on B/S structure is Java personal blog development Student majoring in Computer science and technology Dukang Tutor LvFangXingAbstract:This thesis research topic is base

16、d on B/S structure Jsp personal blog development. This system mainly provide users with blog system. Through the demand analysis of the system, high level design and detailed design, so that the system has the database information retrieval and maintenance function, and fulfilled the blog system rel

17、ated operation function. In this system in the design and implementation of main USES the JSP (Java web Server JavaBean + + Servlet dynamic web design technology, and with Windows XP as operation environment, use browser/Server structure (B/S), backend database is MySQL Server as JSP, Tomcat support

18、 platform. Using development tool use is Dreamweaver 8, JDK1.6 and programming tools Myeclipse. This system mainly consists of four function modules: 1. The main module function: set the user interface, accept the user to select, call the corresponding program blocks. 2 albums module function: accep

19、t blogger submit information, according to the information makes the corresponding add, delete, modify operation, and to the corresponding operation on the database operation, the modified database content, in order to offer the front desk calls 3. Log module function: according to the blogger submi

20、t information that the database add modification and deletion, update the database. For front desk calls. 4. Video module function: to achieve upload or delete video, and the database, in order to offer timely operation desk operation. 5. Shut get autorization module function: to achieve blogger per

21、sonal information to add, delete, modify the function, and promptly to the database operation, for front desk calls. 6. Guestbook module function: provide your visitor with message way, background, and delete, viewer messages to the database, for even operation desk calls. This system mainly complet

22、ed the album module and log of the module, the detailed design blog closed after five modules of the system, achieves the help users to personal blog systems use purpose. Key word: JavaBean, JDBC, ODBC 1 前言1.1 问题的提出随着互联网的不断发展,人们的生活发生了巨大的变化,人们获取信息资料的方式也发生了巨大的改变,越来越多的人喜欢到网上去收集信息,特别是近几年,随着数字化产品的不断普及,人们

23、越来越喜欢上Blog(博客),当下个人博客得到了长足的发展,类似于新浪,网易,都有自己的博客系统。个人博客现在已渐渐成为人们交流,获取网络信息的主要途径。为此,我提出了个人博客系统开发的课题。1.2 课题的背景及意义1.2.1 课题背景博客,又译为网络日志、部落格或部落阁等,是一种通常由个人管理、不定期张贴新的文章的网站。博客上的文章通常根据张贴时间,以倒序方式由新到旧排列。许多博客专注在特定的课题上提供评论或新闻,其他则被作为比较个人的日记。个人博客是博客的一种。自建独立网站的博客主,有自己的域名、空间和页面风格。是个人持续性的日记或评论。它是最传统常见的博客。个人博客作者一般注重博客的内容

24、,即使他们的博客从来没有被除了自己以外的人阅读过。博客经常不只是一个沟通的方法,它们成为了一种反映生活的方法或艺术创作。编写博客可以抒发感情,引起人们的共鸣。很少个人博客出名和成为主流,但一些个人博客很快就聚集了许多读者。研究该系统的意义在于通过个人博客记录个人生活点滴:如同日记一般,可将自己每日生活中发生的事情记录下来,并且跟朋友或网友们分享。传达个人自由思想:博客是个自由的空间,可依照个人自由意志去撰写任意的内容,传达个人的自由思想。抒发分享个人情绪:博客常用来抒发个人情绪,把生活中的不满、郁闷或愤怒宣泄到博客上,或是网友们分享个人心情。分享交流知识技术:如果有专长、兴趣的人,可以借由撰写

25、博客来分享自己的知识与技术,并和网络上得网友交流讨论。 认识同好交流朋友:借由博客的社群性质可以吸引兴趣或性格相合的网友来观看,并且借此认识结交新朋友。 宣传文化推销产品:可以通过自己的企业博客来对外宣传本企业文化,或者通过博客来做营销。1.2.2 课题意义今天,随着网络技术的不断发展进步,网上流行的博客系统以其庞大的访问量和低廉的成本受到越来越多的人的青睐。同时,由于网上博客系统所占据的主导地位,一个简单的个人博客,就可以使用户随心所欲的达到自己的交流目的,这也为网上信息传递提供了一个平台。而且,由于个人博客才刚刚兴起,并且现在还处于免费阶段,以后将会有越来越多的人加入到个人博客的行列中来,

26、同时随着法律的不断完善,网上个人博客也收到了法律的保护,用户可以在自己的博客上发表自己的言论,同他人进行思想上的交流。随着社会的进步,个人博客系统也将成为网络主流。借此,大部分人可以从网络上通过个人博客进行网络营销。由此可见,个人博客系统将拥有一片广阔的市场。不仅仅是人们日常生活的交流,更多的是通过博客学习到更多的知识。2 JSP及其相关技术2.1 JSP技术JSP是由SUN 微软系统公司(Sun Microsystems Inc)倡导、许多公司参与一起建立的一种动态网页技术标准,其在动态网页的建设中有其强大而特别的功能。目前在国外的众多网站特别是涉及电子商务的网站中,已经大量使用了JSP技术

27、。JSP(Java Server Pages,服务器端动态网页)既然名为“服务器端”动态网页,可想而知,JSP必定是在“服务器”建立的动态网页。更明确地说,JSP是能在Web Server(尤其是JSWDK)端整合Java语言至HTML网页的环境中,利用HTML网页内含的Java程序代码取代原有的CGI、ISAPI或者IDC的程序,以便执行原有CGI/WinCGI、ISAPI的功能。2.1.1 JSP的运作模式JSP能在Web Serve (尤其是JSWDK)端整合Java语言至HTML网页的环境中,然后利用HTML网页内含的Java程序代码取代原有的CGI、ISAPI或者IDC的程序,以便执

28、行原有CGI/WinCGI、ISAPI的功能。相对应用于Client端(指的是浏览器端的HTML文件)内嵌的描述语言,Sun公司提供的JSWDK-1.0.1也支持类似的描述语言,它便是Java语言。先来看看JSP的运作模式。由于JSP放置在Web服务器上,它在解析使用者由表单穿送过来的字段数据后,接着通过适当的逻辑生成标准HTML文件,然后传送给客户端,使用者看到的是一般符合HTML格式的文件内容。因为JSP是在JSWDK-1.0.1上执行的,所以无论使用者使用的是哪一种平台下的浏览器,皆能欣赏由JSP产生的网页内容。在传统的网页HTML义件中加入Java程序片段(scriptlet)和JSP

29、标签(tag),就构成了JSP网页(.jsp)。web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTMI格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送E-mail等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行。网络上传送给客户端的仅是得到的结果,JSP对客户浏览器的要求很低,支持无Plug in,ActiveX,无Java Applet、甚至无Frame的浏览器。JSP网页包含以下的组件: JSP指示。JSP页面使用JSP指示将指令传递到JSP引擎。其中包括:JSP页面指示传递与页面相关的信息,例如缓冲区和线程信息或者出错处理;

30、语言指示指定脚本语言以及所有的扩展,包含指示可以被用来在页面中包含一个外部的文件,被包含的文件可能是另一个JSP文件;标签库指示指出页面可以调用的客户标签库类型。 JSP标签。绝大多数JSP处理将通过与JSP相关的基于XML的标签完成。JSP1.0中包含大量标准标签,这些标签作为核心标签包括:JSP:useBcan这个标签卢明对一个JavaBeans组件实例的使用。如果法组件的实例不存在,JavaBeans组件将实例化和注册这个标签;JSP:setProperty这个标签在组件的实例中设置一个属性的值;JSP:getProperty这个标签获取一个组件的实例的属性佰,将其转化为字符串,并民将它

31、放人隐含对象“out”中;JSP:include和JSP:forward。1.1版本包含更多的标准标签。标签的好处在于它们易于在应用程序间使用和共享。基于标签的语法的真正威力来自于客户标签库的开发;使得工具供应商或其他人员能够为特定的要求创建和分派标签。 脚本组件。JSP页面可以在页面中包含小的脚本、称之为小脚本(scriptlet)。小脚本是一个代码片段,在请求的处理过程中被执行。小脚本可以和页面中的静态组件 组合来创建动态生成的页面。脚本在“”标志中被描述。在这对标志中的所有东西都会被脚 本描述语言引擎执行。JSP规范支持所有常用的脚本组件,包括表达式和声明。 JSP页面的应用模型。JSP

32、页面由JSP引擎执行,引擎安装在Web服务器或者支持JSP的应用服务器上。JSP引擎接受客户端对JSP页面的请求,并且生成JSP页面给客户端的响应。JSP页面通常被编译成为Java Servlet。后者是一个标准的Java扩展,页面开发人员能够访问全部的Javs应 用环境,以利用Java技术的扩展性和可移植性。当JSP页面第一次被调用时,如果它还不存在,就会被编译成为一个Java Servlet类,并且存储在服务器的内存中。这使得以后对该页面的调用有非常快的响应。(避免了CGIBIN为每个HTTP请求生成一个新的进程的问题,或是在服务器端使用引用所引起的运行时的语法分析问题)。JSP页面可以包

33、含在多种不同的应用体系结构或者模型中,它的页面可以 应用于由不同协议、组件和格式所组成的联合体中。例如在一个简单实现中,浏 览器直接调用JSP页面,JSP页面自动生成被请求的内容(AD调用JDBC直接从数 据库中获取信息),并且创建标准的HTML,作为结果发送回浏览器。这个模型基本上用JSP页面(编译成为Java Servlet)代替了CGIB则概念。这个方法使用户能够简单而快速地编程,并且很容易根据请求和资源状态生成动态内容。这个结构在许多应用上工作良好,但不能扩展到以下情况,即大量的基于Web的并发客户访问稀少的企业资源。因为每个客户必须建立或者共享一个到可用内容资源的连接。例如,如果JS

34、P页面访问数据库,可能生成许多到数据库的连接,将极大地影响到数据库的性能。2.1.2 JSP的特点和传统的CGI相比较,JSP有相当的优势。首先,在速度上,传统的CGI程序需要使用系统的标准输入输出设备来实现动态网页的生成,而JSP是直接和服务器相关联的。而且对于CGI来说,每一个访问者就需要新增加一个进程来处理,进程不断建立和销毁对于作为Web服务器的计算机将是不小的负担。其次,JSP是专门为Web开发而设计的,其目的是为了建立基于Web的应用程序,包含了一整套的规范和工具。使用JSP技术可以很方便地将一大堆JSP页面组合成为一个Web应用程序。和ISPAI和NSAPI相比较,JSP的开发速

35、度要快得多,开发难度也要小得多,在编译为Java Servlet以后,配合目前最新的JIT(Just In Time)的Java解释器,其执行速度也慢不了多少。而且,ISAPI和NSAPI这种和Web服务器过于紧密结合的技术使用时一旦出现错误,很容易是 Web服务器崩溃,而JSP就没有这个缺点。JSP真正的对手是ASP和PHP,还有最近才问世的ASP.net,在Web技术方面ASP,PHP和JSP的比较见下表。ASPJSPPHPWeb服务器IIS ,PWSApache,IIS,PWS,iPlanet Netscape Server,等Apache,IIS,PWS,Netscape Server

36、等运行平台Windows各种UNIX(Solaris, Linux, AIX, IRIX等),Windows, MacOS等各种UNIX(Solaris, Linux, AIX, IRIX等),Windows组件技术COMJava, EJBCOM, JavaBeans自定义TAG语法无有无开放性无多家合作,包括SUN, IBM, BEA Weblogic Netscape, Oracle自由软件脚本语言支持VBScript, JscriptJava, EMAC-Script, WEBL等PHP建立大型Web应用程序可以可以不宜程序执行速度快极块极块学习难度低较低低Session管理有有有统一的

37、数据库连接有,ADO,ODBC有,JDBC无后缀名AspJspphp, php3, phps表2-1 JSP,ASP,PHP比较Web服务器和运行平台ASP目前仅仅被支持于Microsoft Internet Information Server(IIS)和Personal Web Server(PWS),由于IIS和PWS仅仅有Windows下的版本,故ASP目前只能在Windows平台下使用。尽管有第三方的插件号称可以在UNIX下使用ASP,但对基于COM组件技术的ASP来说,在没有COM支持的UNIX平台下只能是一个“玩具”。JSP仅仅是一个规范,尽管通过的论述可以得出JSP一般要用Ja

38、val来实现的论断,但作为跨平台的语言,Java可以在许多平台下使用。这样,JSP也就显而易见的跨平台的了。目前的JSP的确可以在多种Web服务器和操作系统下使用。如Apache Web Server和Microsoft IIS等。Apache Web Server是世界上占有率最高的Web服务器,可以在包括SUN Solaris, IBM AIM, SGI IRIX, Linux和Windows在内的许多操作系统下运行。Apache Web Server下JSP的实现可以通过免费的Apache Jserv和GNUJSP, Jakarta-Tomcar实现。也可以使用商业的JRUN(LiveS

39、oftware),Websphere(IBM),Weblogic(BEA)来实现。Microsoft IIS本身支持JSP,但可以通过JRUN, Weblogic, Websphere来实现。还可以使用应用服务器添加JSP支持的Netscape Enterprise Server及由之发展而来的可以直接支持JSP的iPlanet Web Server等等。PHP本身就对各种操作系统和Web服务器作了支持,PHP目前可以作为Apache的一个附加模块直接编译进入Apache中去,由于Apache支持多种操作系统,PHP相应地也就可以在各种操作系统上实现。PHP也可以CGI方式或ISAPI方式到I

40、IS或PWS中去。组件技术ASP和JSP对组件技术的支持已经很完善了,而PHP支持COM和JavaBeans。却是很晚,且不完善,所以很难在大型Web应用程序方面将很难与JSP和ASP竞争。但由于PHP技术本身的易学易用,加上众多的函数支持和开放源代码的特性,在中小型Web站点的开发上,PHP还是会占有一席之地的。其实,JSP本身对于ASP和PHP并没有明显的优势,JSP的强大是因为其后面有强大的Java技术做支持。包括JavaBeans和J2EE技术在内的Java技术是JSP强大生命力的所在。Microsoft最新推出的ASP.net技术和ASP技术相比有了许多激动人心的进步,但是从企业级应

41、用的角度看,JSP技术仍然有相当的优势。有理由认为,在将来的Web开发中,中小型站点将出现JSP,ASP.net和PHP三分天下的局面,但是对于大型的电子商务站点,JSP及J2EE技术将成为首选。2.2 Servlet技术2.2.1 Servlet 技术概述 Servlet(Java 服务器小程序)是用Java编写的服务器端程序,是由服务器端调用和执行的任何Java类。Servlet是使用Java Servlet应用程序设计接口(API)及相关类和方法的Java程序。除了Java Servlet API,Servlet还可以使用用以扩展和添加到API的Java类软件包。Servlet是Java

42、 2.0中新增的一个全新功能,是一种采用Java技术来实现CGI功能的一种技术。Servlet本身与协议无关,与平台也无关。浏览器端也就是客户端运行的Java程序叫做Applet,而服务器端运行的程序叫做Servlet。Java Servlet运行于Java-Enable Web服务器中,可以被看作是运行在请求和面向请求服务器上的模块。Java Servlet能够像CGI脚本一样动态的扩展Web服务器的功能,并采用请求响应模式提供Web服务。Servlet和CGI一样都是运行在Web服务器上,用来生成Web页面的。最早支持Servlet技术的是Javasoft的Java Web Server。

43、此后,一些其它的基于Java的Web Server 开始支持标准的Servlet API。Servlet API是用来编写Servlet 的一套编程接口,编写Servlet不需要关心Servlet是如何被加载、Servlet运行的服务环境是什么、传输数据的协议有什么不同等。因而,Servlet能够运行在不同的Web服务器中,Servlet避免了CGI的这些缺陷。Servlet看起来像是通常的Java程序。Servlet倒入特定的属于Java Servlet API的包。因为是对象字节码,可动态的从网络加载,可以说Servlet对Server就如同Applet对Client一样,但是,由于Ser

44、vlet运行于Server中,它们并不需要一个图形用户界面。Servlet的主要功能在于交互式的浏览和修改数据,生成动态Web内容。这个过程为: 用户发送请求至服务器端。 服务器将请求信息发送至Servlet。 Servlet生成响应内容并将其传给Server。响应内容动态生成,通常取决于客户端的请求。 服务器将响应返回给客户端。2.2.2 Servlet 与 JSP 之间的关系当JSP成为开发动态网站的主要技术时,Servlet在开发中占据了非常重要的位置。网站开发具有两种模式,其中的一种模式同时使用到了JSP和Servlet。这种模式结合了JSP和Servlet技术,充分利用了JSP和Se

45、rvlet两者的优点。JSP技术主要用来表现页面,而Servlet技术主要用来完成大量的逻辑处理。也就是说,JSP主要用来发送给前端的用户,而Servlet主要来响应用户的请求,完成请求的逻辑处理。Servlet充当着控制着的角色,用来负责响应用的事务处理。JSP本身没有任何的业务处理逻辑,它只简单的检索Servlet创建的JavaBean或者对象,再将动态的内容插入到预定义的模块中。Servlet创建JSP需要的JavaBean和对象,再根据用户的行为,决定处理哪个JSP页面并发送给用户。由于Servlet更适合于后台开发者的使用,而且Servlet本身需要更多的编程技术,因此Servlet

46、本身在页面上表现形式上非常的欠缺,远远不如JSP。在实际的开发过程中,往往先把JSP页面开发出来,然后再将JSP代码转换成Servlet。这样做的好处是充分利用了JSP的页面表现能力,避免了Servlet在页面表现方面的严重不足,大大缩短了开发周期,各尽所能。2.2.3 Servlet 应用范围及缺陷1. Servlet能完成以下几种功能: 创建并返回一个包含基于客户请求性质的动态内容的完整的HTML页面。 创建可嵌入到现有HTML页面中的一部分HTML页面(HTML片段) 与其他服务器资源(包括数据库和基于Java的应用程序)进行通信 用多个客户机处理连接,接收多个客户机的输入,并将结果广播

47、到多个客户机上。 当允许在以单连接方式传送数据的情况下,在浏览器上打开服务器至Applet的新连接,并将该连接保持在打开状态。在客户机和服务器简单、高效的执行会话的情况下,Applet也可以启动客户浏览器和服务器之间的连接。可以通过定制协议或标准进行通信。 对特殊的处理采用MIME类型过滤数据。 将定制的处理提供给所有服务器的标准例行程序,Servlet可以修改如何认证用户。2. Servlet的一些应用范围: 处理HTTP请求Servlet能够处理HTTP请求,并且能够传递HTTP响应到客户端。 用于处理HTML表单通过HTTP产生提交数据,然后Servlet可以处理这些数据。 允许人们之间

48、的合作一个Servlet能并发处理多个请求,可以使用同步请求支持系统。 转送请求Servlet可以转送请求给其他的服务器和Servlet。这就允许在镜像同样内容的几个服务器之间平衡负载。按照任务类型或组织范围,可以允许被用来在几个服务器中划分逻辑上的服务区。 允许定以激活代理Servlet编写者们可以定义彼此之间共同工作的激活代理,每个代理者是一个Servlet,而且代理者能够在他们之间传送数据。2.2.4 Servlet 的生命周期Servlet的生命周期始于将它装入Web服务器的内存时,并在终止或重新装入Servlet时结束。1. 初始化 在下列时刻装入Servlet: 如果已经配置自动装

49、入选项,则在启动服务器是自动装入 在服务器启动后,客户机首次向Servlet发出请求时 重新装入Servlet时装入Servlet后,服务器创建一个Servlet实例并且调用它的init()方法。在初始化阶段,Servlet初始化参数被传递给Servlet配置对象。2. 请求处理对于到达服务器的客户机请求,服务器创建特定于请求的一个“请求”对象和一个“响应”对象。服务器调用Servlet的service()方法,该方法用于传递“请求”和“响应”对象。Service()方法从“请求”对象或的请求信息,同时处理该请求,并用“响应”对象的方法将响应传回给客户机。Service()方法也可以调用其他方

50、法来处理请求,例如doGet()、doPost()或其他的方法。3. 终止当服务器不再需要Servlet,或重新装入Servlet的新实例时,服务器会调用它的destroy()方法,来终止当前Servlet实例的运行。2.3 JDBC技术2.3.1 JDBC概述JDBC是Java数据库连接(Java Data Base Connectivity)的简称,是一种可用于执行SQL语句的Java API(Application Programming Interface应用程序设计接口)。它由一些Java语言编写的类和界面组成。JDBC为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用

51、程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。Java具有健壮、安全、易用等特性,而且支持自动网上下载,本质上是一种很好的数据库应用的编程语言。它所需要的是Java应用如何同各种各样的数据库连接,JDBC正是实现这种连接的关键。JDBC API 为Java 程序提供了一个统一无缝地操作各种数据库的接口,程序员编程时,可以不关心他所要操作的数据库是哪个厂家的产品,从而提高了软件的通用性。JDBC 现在可以连接的数据库包括:Xbase、Oracle、Sybase、Access 以及 Paradox等。JDBC 在Web和Internet应用程序中的作用和ODBC在Windo

52、ws系列平台应用程序中的作用类似。JDBC扩展了Java语言的功能。使用JDBC,向各种关系型数据库发送SQL语句成为一件很容易的事。将Java和JDBC结合起来,将会使程序经过一次编译即可在其他的任何平台上运行。通过使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一种数据库。也就是说,开发人员可以不必写一个程序访问Sybase,写另一个程序访问Oracle,再写一个程序访问Microsoft的SQLServer。用JDBC写的程序能够自动地将SQL语句传送给相应的数据库管理系统(DBMS)。不但如此,使用Java编写的应用程序可以在任何支持Java的平台上运行,不必在不同的平台上

53、编写不同的应用。Java和JDBC的结合可以让开发人员在开发数据库应用时真正实现“WriteOnce,RunEverywhere!”2.3.2 JDBC两层模型和三层模型JDBC支持两层模型,也支持三层模型访问数据库。两层模型中,一个java Applet或者一个Java应用直接同数据库连接。这就需要能直接被访问的数据库进行连接的JDBC驱动器。用户的SQL语句被传送给数据库,而这些语句执行的结果将被传回给用户。数据库可以在同一机器上,也可以另一机器上通过网络进行连接。这被称为“Client/Server”结构,用户的计算机作为Client,运行数据库的计算机作为Server。这个网络可是in

54、tranet,比如连接全体雇员的企业内部网,当然也可以是internet。在三层模型中,命令将被发送到服务的“中间层”,而“中间层”将SQL语句发送到数据库。数据库处理SQL语句并将结果返回“中间层”,然后“中间层”将它们 返回用户。MIS管理员将发现三层模型很有吸引力,因为“中间层”可以进行对访问的控制并协同数据库的更新,另一个优势就是如果有一个“中间层”用户就可以使用一个易用的高层的API,这个API可以由“中间层”进行转换,转换成底层的调用。而且,在许多情况下,三层模型可以提供更好的性能。到目前为止,“中间层”通常还是用C或C+实现,以保证其高性能。但随着优化编译器的引入,将java的字

55、节码转换成高效的机器码,用java来实现“中间层”将越来越实际。而JDBC是允许从一个java“中间层”访问数据库的关键。2.3.3 使用JDBC的优缺点1.JDBC的优点 JDBC API与ODBC十分相似,有利于用户理解 JDBC 使得编程人员从复杂的驱动器调用命令和函数中解脱出来。可以致力于应用程序中的关键地方。 JDBC 支持不同的关系型数据库,使得程序的可移植性大大加强。 用户可以使用JDBC-ODBC桥驱动器将JDBC函数转换为ODBC。 JDBC API是面向对象的,可以让用户把它的常用方法封装为一个类,以备后用。2. JDBC的缺点 使用JDBC,访问数据记录的速度会受到一定程

56、度的影响。JDBC 结构中包含了不同厂家的产品,这就给更改数据源带来很大的麻烦。2.4 JSP开发方式JSP技术规范种给出了两种使用JSP开发Web应用的方式,这两种方式可以归纳为模型一和模型二,这两种模型的主要差别在于它们处理业务的流程不同。模型一,如下图所示,称之为JSP+JavaBeans模型。在这一模型中,JSP页面独自响应请求并将处理结果返回给客户,所有的数据通过JavaBean来处理,JSP实现页面的表现。图2-2 JSP模型一从上图可以看出,模型一也实现了页面表现和业务逻辑相分离。然而使用这种方式就要在JSP页面使用大量的Java代码,当需要处理的业务逻辑很复杂时,这种情况会变得

57、非常糟糕。大量嵌入式代码使整个页面程序变得异常复杂。对于前端界面设计的网页开发人员来说,这简直是一场噩梦。所以,模型一不能满足大型应用的需要,但是对于小型应用,因为该模型简单,不用涉及诸多要素,从而可以很好地满足小型应用的需要,所以在简单应用中,可以考虑模型一。模型二,如下图所示,称之为JSP+Servlet+JavaBeans模型。这一模型结合了JSP和Servlet技术,充分利用了JSP和Servlet两种技术原有的优势。这个模型使用JSP技术来表现页面,使用Servlet技术完成大量的事务处理,使用图3: 图2-3 JSP模型二Bean来存储数据。Servlet用来处理请求的事务,充当一

58、个控制者的角色,并负责向客户发送请求。它创建JSP需要的Bean和对象,然后根据用户请求的行为,决定将哪个JSP页面发送给客户。从开发的观点看,模型二具有更清晰的页面表现,清楚的开发角色的划分,可以充分利用开发团队中的网页设计人员和Java开发人员。这些优势在大型项目中表现得尤为突出,网页设计人员可以充分发挥自己的美术和设计才能来充分表现页面,程序编写人员可以充分发挥自己的业务逻辑处理思维,实现项目中的业务处理。另外,从设计结构来看,这种模型充分体现了模型视图控制器(MVC)的设计架构。事实上,现存的很多开发框架都是基于这种模型的,充分实现了MVC ,例如Apache Struts框架和Jav

59、aServer Faces框架。3 需求分析3.1 需求分析概述需求分析是软件定义时期的最后一个阶段,他的任务是准确回答“系统做什么?”这个问题。在可行性分析阶段已经粗略的了解了用户的需求,甚至还提出了可执行方案,但是,可行性研究的基本目的是用较小的成本在较短的时间内确定是否存在可行方案,因此忽略了许多细节。所以可行性分析不能代替需求分析,它实际上没有准确说出“系统必须作什么”这个问题。需求分析的任务还不是确定系统怎样完成它的工作,而仅仅是确定系统完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。需求分析的结果是系统开发的基础,关系到工程的成败和软件的质量。因此,必须用行之有效的

60、方法对软件进行严格的审查验证。3.2 个人博客系统概述个人博客系统是主要为注册用户提供一个发布个人信息和写作的平台。用户可以在自己的博客里发布一些自己的文章和相关信息。个人博客系统可以帮助用户管理个人的所有发布信息,而且用户可以对自己的信息进行任意的修改。本博客系统主要是为了用户提供一个网上空间,让用户可以在空闲的时间进入自己的领域随意玩转。3.3 系统目标博客网站系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的个人博客网站,为网络用户提供进行在线交流的网络平台。通过个人博客网站可以结交更多的朋友,表达更多的想法,它随时可以发布文章。具体的要求如下: 博主可以简单的添加和删除文章; 独立于具体的数据库平台。对于与数据库交互的部分充分考虑兼容性

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!