

已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JSP:完整的参考前言第一波的新技术往往超过了它所产生的预期。那些生产第二波的人从他们的前辈们的经验中获益和真正的价值。这是Java的情况。客户端浏览器应用程序(applet)遇到限制主要在三个方面: 浏览器不兼容 安全过度 长时间下载产生的性能问题服务器端Java的出现改变了这一切。Java servlet和JavaServerPages(JSP)提供一个安全的、健壮的、平台独立的技术让Java的力量在电子商务和企业网络计算得以体现。在JSP越发繁荣和JSP技术高涨的需求的情况下,几乎所有的财富500强公司现在或不久将部署服务器端Java应用程序。这本书的目的是提供一个完整的JSP技术,从JSP的Web编程环境和元素,然后更深入了解考试的高级主题。1. 网络市场罗马论坛位于台伯河中心附近。二千年前,罗马论坛权力在罗马世界的中心。那是凯旋游行发生,普通商品和服务的交换,而新闻和意见自由共享的地方(我们常见的“论坛”)。今天,互联网是全球电子市场。互联网在商品的交换中心,服务,和信息,企业和个人消费者中占据主导地位。像罗马论坛,互联网的增长是通过先进的技术新计算机语言,广泛接受的网络标准和廉价的硬件。这本书是关于JavaServer Pages,汇集了Web浏览器的支持术,Web服务器和数据库系统应用程序的开发,访问,和部署。Java技术在连接性,可靠性、可伸缩性和安全性方面已经被证明是无与伦比的。没有人能肯定地预测未来趋势。2. Web应用程序的进化作为最引人注目的东西之一,万维网最初不是作为应用程序环境。然而今天,Web应用程序成为互联网使用最多的特别是, 电子商务的使用。本章简要追溯了万维网的起源,Web应用程序,以及相关技术,设置更详细的背景技术探索在这本书的其余部分。2.1 Web的产生1990年,万维网及其相关的超文本传输协议(HTTP)在欧洲粒子物理实验室(CERN) 被提出。Tim bernerslee开发HTTP作为分配的网络协议文档并且写出了第一个Web浏览器。在1991年和1992年,该系统在欧洲核子研究中心所和其他高能物理实验室以及大学被广泛使用,人气稳步增长。1993年,马赛克浏览器的出现导致了商业网络使用的爆炸。在过去5年中,全世界有超过650000的Web服务器正在被数以百万计的用户使用。2.2 Web编程模型的成长应用程序环境的发展随着时间的推移,每个阶段的技术作为新想法的跳板。第一操作模式Web服务器只是提供文件的请求。在这种环境下,内容不会改变,除非人类作者提供一个新版本的文档。客户端/服务器交互如图 1所示。图1 静态文档服务器模型HTTP是一个简单的请求/响应协议的Web浏览器的请求文档(通常使用GET命令)和Web服务器返回的文档,HTML数据流的形式之前一些描述性的标题。很显然,如果人类可以通过Web服务器修改文档,那么文本处理程序可以像一个Perl脚本。Web浏览器不能识别差异,因为一个HTTP请求的结果仍然是一个HTML数据流。更重要的是,浏览器不仅仅可以发送一个请求,还可以发送参数,通过嵌入在URL或发送数据流的请求。这表明一个HTTP请求可以被解释为一个数据库查询和查询结果,可用于动态地构建一个HTML文档。HTTP Web服务器的发展搭建了一个新的规范指定通用网关接口(CGI)。CGI程序调用由Web服务器来响应特定类型的请求,通常在一个特定的请求文档目录或文件名有特定的扩展,比如. CGI。请求参数传递的键/值对,和请求头作为环境变量。程序读取这些参数和标题,手头任务执行应用程序访问一个数据库(通常这样做),然后生成一个HTTP响应。请求的响应发送回Web浏览器,就好像它是一个普通的静态文件。图2 显示了流程流。图2 CGI脚本生成动态内容CGI方便,但它有一个大缺点。通常,CGI为每个HTTP请求生成一个新进程。当流量较低时,这不是一个问题,但它创建了大量开销当交通水平增加。因此CGI功能不能很好地伸缩。1997年Java Servlet API的发布,并有了显著的提升,紧随JavaServer Pages(JSP)的API。这些相关技术提升了Java Web服务器、数据库连接,网络访问,和多线程操作的功能,并且体现在不同的流程模型中。servlet和JSP页面操作的一个实例仍在内存中,同时使用多个线程来响应请求。如图3所示,servlet和JSP pagescan利用完整的Java 2 Enterprise Edition(J2EE)使环境复杂,健壮应用程序。 图3 动态应用程序使用servlet、JSP和J2EE2.3 从客户端转移到服务器端的解决方案Web应用程序模型发展已经成熟,每个阶段累计的经验已经符合驱动要求。初始波客户端Java applet的形式是非常受欢迎的,但在现实当中还是有一些遗憾。浏览器之间存在较大的不兼容,长时间下载的情况下解调器调制缓慢,存在的安全问题也限制了applet的实用性。正因为如此,applet发展放缓,而服务器端Java成为了最大的增长领域。服务器端Java applet的没有限制的环境。没有浏览器发生矛盾,因为浏览器不需要举办一个Java虚拟机。浏览器只需要渲染HTML,甚至最古老的浏览器做得相当好。同时,不涉及客户端设置,没有大型类文件的下载。同样,安全问题仅限于那些已经由Web服务器接手的,它通常是在一个封闭的环境控制。JSP已经被证明是一个成功的开发Web应用程序的服务器端技术和并且为开发Web应用程序提供一个很好的基础。3. JSP概述一个Java服务器页面(JSP)是一个Web页面的模板,使用Java代码动态生成一个HTML文档。jsp是运行在一个服务器端组件,被称为一个JSP容器,将它们转换为等价的Java servlet。出于这个原因,servlet和JSP页面是密切相关的。在很大程度上,两种技术都有其各自的优势。因为它们都是是servlet,JSP页面有servlet的优点: 它们比CGI脚本有更好的性能和可伸缩性,因为它们在内存中是持久的和多线程。 不需要特殊的客户端设置。 它们的内置使得应用程序编程支持HTTP会话。 它们有完全访问Java技术网络意识、线程和数据库连接没有客户端程序的限制。但是,此外,JSP页面有自己的优势。 它们是在必要时自动重新编译。 因为它们存在于普通Web服务器文档空间,处理JSP页面比解决servlet简单。 由于JSP页面类似html的,它们与Web开发工具相比有更大的兼容性。3.1 JSP如何工作一个JSP页面中存在三种形式: 表单开发人员实际上写道。它存在于一个文本文件的延伸。jsp,包括一个混合的HTML模板代码,Java语言语句,描述如何生成和jsp指令和操作Web页面服务特定请求 JSP容器将JSP源代码转换为等效的Java servlet的源代码。此源代码通常保存在一个工作区域并且通常是有利于调试的。 编译后的Java类和其他Java类,生成的servlet代码在一个类文件中被编译成字节码,可以加载和执行。JSP容器管理这些自动基于每个文件的时间戳形成的JSP页面。为了回应一个HTTP请求, 在最后一次编译java源代码后,容器检查jsp源文件是否已经修改。如果是这样,容器重译JSP源代码到Java源代码重并且新编译源代码。图4显示了JSP容器所使用的过程。当请求一个JSP页面,容器首先判断类的名称对应的JSP文件。如果类不存在或者如果它是比jsp文件旧(即jsp源代码改变了因为它最后一次编译),那么一个等价的servlet容器创建Java源代码和编译它。如果servlet的实例不是已经运行,容器加载servlet类并创建一个实例。最后,集装箱分派一个线程来处理当前HTTP请求的加载实例。图4 JSP容器所使用的逻辑来管理JSP转换4. 超文本传输协议(HTTP)的概述4.1 什么是超文本传输协议超文本标记语言(HTML)是语言用来描述Web文档的内部,超文本传输协议(HTTP)是语言用来描述如何通过互联网发送这些文件。了解网络编程的关键是理解该协议在其运作和环境。HTTP请求文档的语言在因特网上规定的规则浏览器发出请求和服务器提供响应。这组规则或者协议的方法包括: 要求一个文档的名字 数据格式达成一致 确定用户是谁 决定如何处理过时的资源 表示请求的结果和其他有用的功能 HTTP写成由一组命令行普通的ASCII文本。当你使用一个Web浏览器,你不直接输入HTTP命令。相反,当你输入一个URL或点击超链接时,浏览器将你的行为转化为HTTP命令请求从服务器文档中指定的URL。Web服务器查找文档并将其发送回浏览器的显示,以及其他相关的图
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-江苏-江苏垃圾清扫与处理工五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-广西-广西水工监测工一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广西-广西房管员三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广西-广西园林绿化工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广西-广西保安员四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东计量检定工一级(高级技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-广东-广东水文勘测工二级(技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-安徽-安徽土建施工人员四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-北京-北京铸造工五级(初级工)历年参考题库典型考点含答案解析
- 热风炉安全知识培训内容课件
- 2024年10月19日北京市下半年事业单位七区联考《公共基本能力测验》笔试试题(海淀-房山-西城-通州-丰台-怀柔)真题及答案
- 《中国动态血压监测基层应用指南(2024年)》解读 2
- 2025初中语文新教材培训
- 企业技术人员管理制度
- DB13T 5545-2022 选矿厂安全生产基本条件
- 探索语文学习的有意义情境任务设计
- 血管内导管相关性血流感染预防与诊治2025
- JG/T 237-2008混凝土试模
- 智慧停车系统开发与运营合作
- T/SHPTA 102-2024聚四氟乙烯内衬储罐技术要求
- T/CAQP 001-2017汽车零部件质量追溯体系规范
评论
0/150
提交评论