欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    文献综述.docx

    • 资源ID:6246743       资源大小:82.18KB        全文页数:11页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    文献综述.docx

    1、文献综述专业文献综述题 目: 基于java的web聊天室 姓 名: 陈义旺 学 院: 理学院 专 业: 信息与计算科学 班 级: 信科092 学 号: 23109223 指导教师: 李爱萍 职称: 副教授 2012年 10月 31日南京农业大学教务处制基于java的web聊天室信息与计算科学专业学生:陈义旺 指导老师:李爱萍摘要:随着Internet的普及和宽带网络技术的成熟,聊天室这种交流方式已经被大众所认可。通过聊天室在线聊天已成为网络上人与人之间的沟通、交流和联系的一种方式,为此越来越多的网站开始提供在线聊天的功能。与此同时,聊天室也以其方便、快捷和低成本等优势受到众多企业的青睐,很多企

    2、业的网站中也加入了聊天室,以达到增进企业与消费者之间、消费者与消费者之间相互交流和联系的目的。系统开发的任务主要包括前台界面设计和后台数据库管理系统设计。前台采用JSP开发工具和Ajax技术,后台数据库采用Oracle 11g数据库设计,利用iBaits工具和JDBC数据库访问技术实现对数据库的各种管理和操作,实现聊天室的群聊和私聊功能和显示在线聊天用户信息等功能。关键词:聊天室,JDBC数据库访问技术,Ajax技术,jsp Java-based web chat roomsStudent major in Information and Computing Science: yiwang C

    3、hen Guidance teacher: aiping LiAbstract:With the popularity of the Internet and broadband network technology matures, chat rooms, this form of communication has been the public recognition. Through chat rooms, online chat has become a way of communication, exchanges and contact between people on the

    4、 network, this more and more websites started offering online chat function. At the same time, the chat rooms also favored by many businesses with its convenient, efficient and cost advantages, the site of many companies also joined the chat room, in order to achieve the increase between businesses

    5、and consumers, the consumer and the consumer the purpose of mutual exchange and contact. The task of the system development including the front interface design and back-end database management system designed. The foreground JSP development tools and Ajax technology, back-end database using the Ora

    6、cle 11g database design using iBaits tools and JDBC database access technology to achieve a variety of database management and operation, chat, group chat and private chat function and display online chat user information and other functions.Keywords:Chat rooms, JDBC database access technology, Ajax

    7、 technology, jsp前言:随着Internet的普及和宽带网络技术的成熟,越来越多的用户进入到网络世界中享用浏览新闻、查询信息、发送邮件、在线观看电影等服务,享受网络带来的便利和办公的高效。与此同时,一个新型的Web应用程序为网民之间提供了一个即时互通信息的功能和场所,这就是聊天室。聊天室在网络早期就开始盛行了,不论是BBS、IRC都有类似的网上聊天机制。聊天室为网友提供了实时对话的渠道,是网络上极为流行的一种服务。聊天室适用于网上会议或闲聊的场合。聊天室为网友提供了较好的交友环境,网友之间互相以文字交谈,在形式上类似笔友的性质,却大大节省了书信往返的时间。 很显然,一个聊天室应用

    8、程序必须有一个服务组件。在所有聊天者之间需要某个代理去跟踪各类聊天信息,谁登录进来并在哪个聊天室聊天,以及系统级事项。不过更重要的是需要某个消息仲裁程序(arbiter)-当前有指定聊天室中所有聊天用户查看消息有一种方式。在AOL这类“真实”聊天应用程序中, 服务实际上是将新消息推给聊天室中的用户的。这样一旦在聊天室中发了消息,其他人就能看到,之间没有延迟。 正文 1.聊天室的发展阶段: 1.1 静态网页聊天室阶段静态网页聊天室前台通过HTML静态网页实现用户与用户、用户与服务器之间的交互,若用户想要查看其他用户或者是服务器发来的消息,必须要退出后再重新登录中或者手动刷新,才可以查看上一次登录

    9、后的消息。 1.2 自动刷新聊天室阶段 虽然静态网页聊天室的出现解决用户对聊天室出现的向往的问题,但是用户若想要查看消息必须要退出后再重新登录,这样繁琐的退出与重新登录操作不能从根本上解决用户交互的需求,这时自动刷新聊天室出现可以解决上述问题。 自动刷新聊天室是通过设置一个周期性的自动刷新时间,这样的自动刷新就会向服务端发送一个请求,这种聊天室类似于早期版本的3GQQ。 1.3 局部自动刷新聊天室阶段 尽管自动刷新聊天室尽管很好的解决了早期聊天室的手动刷新的带来问题,但是新的问题又产生了:如果在周期时间内没有发送消息,还是同样的刷新页面,这样会浪费网络的带宽,特别是在网络不是很流畅的情况下;同

    10、样自动刷新整个页面会造成页面的轻微拉动,在视觉上给用户带来不好的影响。 这样就需要局部自动刷新页面技术,Ajax能很好的实现这点,所以局部自动刷新聊天室就这样产生了,这个也是现在最流行的网络聊天室。2.现在最流行的聊天室2.1聊天室的流程 2.2最流行聊天室的功能 通过该聊天室,用户可以通过设置不同的用户名和密码以各种不同的身份进入聊天室,用户的类型有两种:普通用户和管理员。普通用户可以在聊天室中发送信息,也可以和指定的聊天对象用户私聊,还可以对发送的信息进行动作、颜色等方面的限制。管理员出了具有普通用户的功能外,还可以对在线用户和所有数据库中的用户进行设置,以便对聊天室进行维护。管理员可以把

    11、在线用户踢出聊天室,还可以删除其他管理员不希望再次进入聊天室的用户。聊天室又分为三类,用户可以根据自己的需要进入不同的聊天室进行聊天。系统还应具有自动把在线但不发言的时间超过系统设置的时间的用户踢出聊天室和的功能,还应具有当有新用户进入聊天室时,实时更新在线用户的功能。聊天室的特点就是要求能够实时显示出聊天者所谈的内容。即在同一个聊天室的使用者,可以在短时间内立刻看到其他聊天者的发言。作为用户喜欢的Web应用程序,出了具有能够实时显示出聊天者所谈论的内容外,还应具有以多种方式发布信息的功能。JSP正好可以满足聊天室的这种要求,它可以快速地创建和显示Web页面的动态内容。总的来说,最流行的聊天室

    12、主要实现了以下的功能:1、用户输入帐号,密码登录聊天室2、用户注册帐号,并把用户信息写入数据库3、把用户的聊天信息写入数据库4、用户可以修改聊天语句的颜色,选择说话动作5、用户聊天室可以选择聊天对象(私聊,群聊)6、聊天室不断地对数据库进行刷新、读取7、实时更新在线的用户8、管理员管理在线用户3.聊天室的MVC模型3.1 MVC 简介系统开发采用基于模型视图控制器(MVC model-view-controller)的设计模式。MVC是1979(1980年被用于SmallTalk-80)由Trygve Reenskaug提出,Model-View-Controler的简称(模型-视图-控制器)

    13、 Model代表了数据对象,model层用来实现业务逻辑 View用来在屏幕上显示数据对象的当前状态,是应用程序的外观 Controller-主要负责View层和model层之间的控制关系。具体实现时,把Servlet作为应用程序的控制器,把JSP作为视图,JavaBeans被用来表示模型。所有的请求都被发送给作为控制器的Servlet, 他接受请求,并根据请求信息将他们分发给适当的JSP来响应。同时servlet 还根据JSP的需求生成JavaBeans的实例并输给JSP环境。JSP可以通过直接调用方法或使用UseBean的自定义标签得到JavaBeans中的数据。能够达到数据层与表示层的分

    14、离,使开发空座更加容易和迅速。 3.2 MVC结构图4.最流行聊天室用到的技术聊天室程序设计根据需求的不同可繁可简,下面研究的是一个具有简易功能的聊天室,是使用JSP+Ajax实现的无刷新动态网站聊天室。系统开发的任务主要包括前台界面设计和后台数据库管理系统设计。前台采用JSP开发工具和Ajax技术,后台数据库采用Oracle 11g数据库设计,利用iBaits工具和JDBC数据库访问技术实现对数据库的各种管理和操作,实现聊天室的群聊和私聊功能和显示在线聊天用户信息等功能。以下分别介绍每种技术:1、jsp动态网页技术2、Ajax技术3、JDBC数据库访问技术4、iBaits数据库访问工具下面分

    15、别介绍很种技术4.1 JSP动态网页技术 4.1.1 JSP的起源 HTML是一种标识语言,用于指定可视页面的构成元素,通过超连接可以实现页面之间的跳转。因为静态页面是用单纯的HTML语言组成的,其内容在创建之初就已经定义好,只是简单的展示给客户端用户,它不具有交互性,所以静态页面已经不能满足网络快速发展的的需要。为了满足实际的需要,能够产生动态内容的动态网页技术应运而生。该技术允许将商业逻辑组件镶嵌支HTML代码中,根据客户端需要动态地产生响应数据,响应数据的外观依然由HTML标识。 一个动态网页由标识语言代码和编程语言代码构成。当客户端发送请求时,服务器首先执行编程语言代码,用执行结果替换

    16、掉编程语言代码,和原有标识语言代码合并,最后把合并后的网页发送回客户端。根据标识语言代码和编程语言代码间的关系,存在一种最为流行的动态网页技术是将编程语言代码镶嵌到标识语言代码中,例如JSP、ASP技术。 4.1.2 JSP动态网页的优势 通过比较ASP和JSP这两种传统的动态网页制作技术,觉得JSP具有明显的优势:(1)作为Java平台的一部分,JSP拥有Java编程语言“一次编写,到处运行”的特点,一次写入之后,可以运行在任何具有符合Java语法结构的环境中,取代过去单一开发。而ASP主要工作环境是微软的IIS应用程序,又因Activex对象具有平台特性,所以ASP技术不能很容易的实现跨平

    17、台的服务器的工作。(2)ASP仅支持组建对象模型COM,而JSP技术提供的组建都是基于JavaBean技术或JSP标签库。除此之外,JSP还有组件的可重用性,标签的可扩充性和易于维护等特点。如上的分析比较不难看出,JSP技术编写的程序运用要更加灵活,可扩展性更强。4.2 Ajax技术 4.2.1 Ajax的产生如果你正要创建一个纯粹的基于HTML的聊天应用程序,那么,与我们即将实现的这个应用程序一样,你必须考虑到这些方面。但是由点由于Web是以C/S交互的拉模式为基础的,忽略了很多东西,如applet,所以你的处理方式 将会有一些不同。所以在页面上将有一个元(meta)刷新标签定期向服务器请求

    18、新消息,但每一次都要重绘整个屏幕,这种方式的效率相当低,特别是当你利用JSP或其他动态呈现技术来实现的时候,就需要服务承担重绘工作。这里肯定有更好的实现方式,这种方式就是:Ajax!4.2.2 Ajax简介 Ajax技术是Web2.0的核心之一,本质上是一种RIA(RichIllternet Application)技术。RIA是指具有高度互动性和丰富用户体验的网络应用程序,它既具有消息确认、无刷新页面之下提供快捷的界面响应、拖放式等桌面应用程序的特点,同时又具有部署简单、跨平台等Web应用程序的特点。Ajax技术提供了客户端与服务器异步通信的能力,从而使用户从请求一响应一再请求的循环中解脱出

    19、来,同时降低了网络传输的数据量,提高了客户端的响应速度,改善了用户使用体验,使得web应用可以接近甚至达到类似“桌面应用”的效果。 4.2.3 Ajax技术的用途 Ajax技术的精髓是用异步交互替代了传统的同步交互,所以当用户操作时间大于服务器响应时间的时候,使用Ajax的效果非常明显。而当程序性能的瓶颈在于服务器响应时间的时候,Ajax无法解决程序运行缓慢的问题。因此,Ajax更适合应用在交互频繁的轻量级Web 上。在应用Ajax 开发方面,Google 公司成功地将Ajax技术应用到它们的商业产品中。Google Map和Google Suggest 都应用了这项技术。当用户在使用Goog

    20、le Map 浏览地图时(这里所说的浏览包括地图的放大缩小,以及地图的平移),并没有向服务器提交什么请求,就可以浏览到地图各个部分的内容。在这里,正是应用了Ajax技术,使得地图并不是以刷新的方式显示,而是每次都在原有数据的基础上以增量方式显示。这样,用户感觉就好像是在自己的计算机上查看本地的地图一样。微软也在积极开发Ajax应用:它将Ajax技术应用到MSN Space上面。当用户使用MSN Space提交回复评论时,浏览器会暂时停顿一下,然后在无刷新的情况下把用户提交的评论显示出来,这个就是应用了Ajax 的效果。目前,Ajax应用最普遍的领域是GIS-Map方面。GIS的区域搜索强调快速

    21、响应,Ajax 的特点正好符合这种要求。在应用Ajax技术开发过程当中,处于核心位置的Ajax引擎实际上是一些复杂的JavaScript程序。4.2.3 Ajax技术的不足 随着网络应用和界面表现的复杂化,使用面向过程的JavaScript 语言描述表现逻辑将会变得很困难。同时, JavaScript的兼容性和调试都会成为使用Ajax技术的一个障碍。为了解决这些问题,开发人员已经开发出了一些基于Ajax技术的框架,方便了开发人员使用,有利于Ajax 技术的进一步推广。当然,任何技术都是有局限性的,Ajax也不例外。Ajax更新页面无需刷新重载,这也使传统的一些用户交互行为变得不可用,如后退、前

    22、进和刷新等。另外,移动设备(如手机、PDA等)现在还不能很好的支持Ajax,Ajax 对流媒体的支持也没有Java Applet和Flash这样成熟的技术好。 因此,一些辅助的平台和插件的开发也将是Ajax技术应用当中重要的一部分。Ajax把大量的运算从服务器转移到了客户端浏览器,这意味着浏览器将承受更大的负担,而不再是简单的文档显示功能。4.3 JDBC数据库访问技术 4.3.1 JDBC技术简介 JDBC 是个低级接口,也就是说,它用于直接调用 SQL 命令。在这方面它的功能极佳,并比其它的数据库连接 API 易于使用,但它同时也被设计为一种基础接口,在它之上可以建立高级接口和工具。高级接

    23、口是对用户友好的接口,它使用的是一种更易理解和更为方便的 API,这种API在幕后被转换为诸如 JDBC 这样的低级接口。4.3.2 JDBC技术的用途在关系数据库的对象/关系映射中,表中的每行对应于类的一个实例,而每列的值对应于该实例的一个属性。于是,程序员可直接对 Java 对象进行操作;存取数据所需的 SQL 调用将在掩盖下自动生成。此外还可提供更复杂的映射,例如将多个表中的行结合进一个 Java 类中。 随着用数据库存取重要数据比文件更为方便和保险,人们对 JDBC 的兴趣日益增涨,越来越多的开发人员一直在使用基于 JDBC 的工具,以使程序的编写更加容易。程序员也一直在编写力图使最终

    24、用户对数据库的访问变得更为简单的应用程序。例如应用程序可提供一个选择数据库任务的菜单。任务被选定后,应用程序将给出提示及空白供填写执行选定任务所需的信息。所需信息输入应用程序将自动调用所需的 SQL 命令。在这样一种程序的协助下,即使用户根本不懂 SQL 的语法,也可以执行数据库任务。 4.3.3 JDBC技术的优势目前,Microsoft 的 ODBC API 可能是使用最广的、用于访问关系数据库的编程接口。它能在几乎所有平台上连接几乎所有的数据库。为什么 Java 不使用 ODBC?对这个问题的回答是:Java 可以使用 ODBC,但最好是在 JDBC 的帮助下以 JDBC-ODBC 桥的

    25、形式使用,这一点我们稍后再说。现在的问题已变成:为什么需要 JDBC?答案是显然的:ODBC 不适合直接在 Java 中使用,因为它使用 C 语言接口。从Java 调用本地 C 代码在安全性、实现、坚固性和程序的自动移植性方面都有许多缺点。从 ODBC C API 到 Java API 的字面翻译是不可取的。例如,Java 没有指针,而 ODBC 却对指针用得很广泛(包括很容易出错的指针void *)。您可以将 JDBC 想象成被转换为面向对象接口的 ODBC,而面向对象的接口对 Java 程序员来说较易于接受。 ODBC 很难学。它把简单和高级功能混在一起,而且即使对于简单的查询,其选项也极

    26、为复杂。相反,JDBC 尽量保证简单功能的简便性,而同时在必要时允许使用高级功能。启用纯 Java 机制需要象 JDBC 这样的 Java API。如果使用ODBC,就必须手动地将 ODBC 驱动程序管理器和驱动程序安装在每台客户机上。如果完全用 Java 编写 JDBC 驱动程序则 JDBC 代码在所有 Java 平台上(从网络计算机到大型机)都可以自 动安装、移植并保证安全性。 总之,JDBC API 对于基本的 SQL 抽象和概念是一种自然的 Java 接口。它建立在 ODBC 上而不是从零开始。因此,熟悉 ODBC 的程序员将发现 JDBC 很容易使用。JDBC 保留了 ODBC 的基

    27、本设计特征;事实上,两种接口都基于 X/Open SQL CLI(调用级接口)。它们之间最大的区别在于:JDBC 以 Java 风格与优点为基础并进行优化,因此更加易于使用。 4.4 iBaits数据库访问技术 4.4.1 什么是iBaits技术iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO),同时还提供一个利用这个框架开发的JPetStore实例。 相对Hibernate和Apache OJB等“一站式”ORM解决方案而言,ibatis 是一种“半自动化”的ORM实现。 4.4.2 iBaits技术的优势纵观目前主流的 ORM,无论 Hibe

    28、rnate 还是Apache OJB,都对数据库结构提供了较为完整的封装,提供了从POJO 到数据库表的全套映射机制。程序员往往只需定义好了POJO 到数据库表的映射关系,即可通过 Hibernate或者OJB 提供的方法完成持久层操作。程序员甚至不需要对 SQL 的熟练掌握,Hibernate/OJB 会根据制定的存储逻辑,自动生成对应的 SQL 并调用 JDBC 接口加以执行。 但是传统的JDBC技术和hibernate数据Hibernate等提供了全面的数据库封装机制总会遇到:a 系统的部分或全部数据来自现有数据库,处于安全考虑,只对开发团队提供几条Select SQL(或存储过程)以获

    29、取所需数据,具体的表结构不予公开。 b 开发规范中要求,所有牵涉到业务逻辑部分的数据库操作,必须在数据库层由存储过程实现(就笔者工作所面向的金融行业而言,工商银行、中国银行、交通银行,都在开发规范中严格指定) c 系统数据处理量巨大,性能要求极为苛刻,这往往意味着我们必须通过经过高度优化的SQL语句(或存储过程)才能达到系统性能设计指标。 面对这样的需求,再次举起 Hibernate 大刀,却发现刀锋不再锐利,甚至无法使用。直接使用 JDBC进行数据库操作实际上也是不错的选择,只是拖沓的数据库访问代码,乏味的字段读取操作令人厌烦。 “半自动化”的ibatis,却刚好解决了这个问题。这里的“半自

    30、动化”,是相对Hibernate等提供了全面的数据库封装机制的“全自动化”ORM 实现而言,“全自动”ORM 实现了 POJO 和数据库表之间的映射,以及 SQL 的自动生成和执行。而ibatis 的着力点,则在于POJO 与 SQL之间的映射关系。也就是说,ibatis并不会为程序员在运行期自动生成 SQL 执行。具体的 SQL 需要程序员编写,然后通过映射配置文件,将SQL所需的参数,以及返回的结果字段映射到指定 POJO。 使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的 Java对象,这一层与通过 Hibernate 实现 ORM 而言基本一致,而对于具体的数

    31、据操作,Hibernate会自动生成SQL 语句,而ibatis 则要求开发者编写具体的 SQL 语句。相对Hibernate等,“全自动”ORM机制而言,ibatis 以 SQL开发的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间。作为“全自动”ORM实现的一种有益补充,ibatis 的出现显得别具意义。结论聊天室总体采用MVC模式:前台采用JSP动态技术,实现页面的动态显示,这样用户就可以实时查看其他用户或者服务发来的消息,前台JSP页面再加上Ajax技术可以实现网页局部的刷新,在用户不知情的情况下对网页进行“偷偷”地刷新;后台用基于JDBC的iBaits工具对数据库进行增、

    32、删、改、查操作。 每个MVC模型有机的结合组成了最流行聊天室的骨基本架,另外动态的jsp技术替代HTML静态技术,再嵌套AJAX自动刷新技术,访问后台的数据库的JDBC技术,连接前台面向对象和后台关系型数据库的iBaits,这样就组成了现在最流行聊天室。参考文献:1杨昭.JSP课程设计案例精编M.北京:中国水利水电出版社,2005.2武延军,黄飞跃.精通JSP编程技术M.北京:人民邮电出版社,2001.3赛奎春,JSP工程应用与项目实践M.北京:机械工业出版社,2005.4贾素玲,王强.JSP应用开发技术M.北京:清华大学出版社, 2008. 5王珊,萨师煊.数据库系统概论M.北京:高等教育出版社,2006.6刘瑞新,ASP动态网站开发毕业设计指导及实例


    注意事项

    本文(文献综述.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开