收藏 分享(赏)

零点起飞学Java Web开发之Servlet技术基础.pptx

上传人:dreamzhangning 文档编号:3361417 上传时间:2018-10-18 格式:PPTX 页数:14 大小:278.61KB
下载 相关 举报
零点起飞学Java Web开发之Servlet技术基础.pptx_第1页
第1页 / 共14页
零点起飞学Java Web开发之Servlet技术基础.pptx_第2页
第2页 / 共14页
零点起飞学Java Web开发之Servlet技术基础.pptx_第3页
第3页 / 共14页
零点起飞学Java Web开发之Servlet技术基础.pptx_第4页
第4页 / 共14页
零点起飞学Java Web开发之Servlet技术基础.pptx_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、第8章 Servlet技术入门,Servlet技术是JSP技术的基础,初学者一般都是从学习JSP技术开始的。主要是因为这种技术相对简单些。虽然应用JSP和JavaBean联合起来可以完成大部分Servlet的功能,但Servlet技术有其不可替代的独特的优势。例如,高效率、高安全性等特点。本章通过结合例子讲解Servlet的基础知识,使读者初步理解这种技术的特点和使用方法。,8.1 Servlet介绍,Servlet技术出现于J2EE平台之前,在过去的一段时间内,Servlet技术得到了广泛的应用。JSP技术是基于Servlet技术框架下的,由此可见Servlet技术的强大。下面讲述Servl

2、et的概念、特点,以及它与JSP的关系。,8.1.1 什么是Servlet,Servlet是运行于服务器端的、按照其自身规范编写的Java应用程序。笔者认为可以从3个层面解释这个概念。 Servlet是用Java语言编写的,它是一个Java类。因而Servlet遵守所有Java语言的语法规则,并且它可以调用一般Java程序可以调用的系统包。 Servlet是在服务器端运行的。它编译后的“.class”文件被服务器端调用和执行。Web服务器使用该class文件去处理浏览器请求,并将处理的结果返回到客户端。 由于Servlet特殊的应用特点,它有自身特殊的规则。一般来说,它必须调用Java Ser

3、vlet API,必须是对特定类或接口的继承或实现。并且,它必须重写特定的方法去处理客户端请求。 Servlet的主要功能是用来接受、处理客户端请求,并把处理结果返回到客户端显示。其过程如下所述。,1客户端把请求送到Servlet处理,例如,用来实现注册的用户表单,其代码中可以指定使用哪个Servlet去处理它。用户填写好表单,当单击“提交”按钮时,客户端将请求发到Web服务器。Web服务器根据客户端的请求找到相应的Servlet调用它去处理请求。,2Servlet处理请求,这时Servlet相应的方法被Web服务器调用去处理请求。这个过程中,Servlet可以和服务器端的其他资源(文件、数据

4、库、Applet、Java应用程序等)交互。例如,该Servlet可以调用其他的Servlet、Java应用程序、Applet。它还可以连接数据库、执行数据库操作、读取文件或者生成文件。执行完这些操作后,该Servlet会把最终客户端想要的结果返回。,3Servlet把请求的结果返回到客户端显示,在这个过程中,Servlet返回的并不仅仅是数据结果,而是整个HTML文件。例如,用户在网页上查询信息时,假设在单击“查询”按钮后,返回了显示查询结果的页面。那么用来表示这个页面的整个HTML文件都是Servlet产生并返回来的,而并不仅仅是页面上显示的查询结果。 说明:客户端与Servlet不断交互

5、,因而生成动态Web内容。 若要实现一个Servlet,必须实现Java Servlet API。这就要求该Servlet类继承系统已经定义好的类,并且重载这个特定类的方法。在这些方法中完成对客户端请求的处理,最后将生成的HTML页面返回到客户端。具体的实现方法在8.1.3节的例子中讲解。,8.1.2 Servlet的优势,Servlet最大的优势就在于一方面它是用Java语言写的,是一个Java类。因而,Java语言赋予了它强大的功能;另一方面,它又可以用来处理客户端的请求,并且可以返回响应。这两方面的结合使Servlet成为功能非常强大的服务器端语言。总地来说,它主要有以下方法的优势。 可

6、移植性好。 功能强大。 安全性好。 简洁。 高效耐久。,8.1.3 JSP vs Servlet,JSP和Servlet的关系可以这样描述:一个JSP文件本质上就是一个Servlet类。只不过这个类在该JSP文件被客户端或者其他的Servlet调用时,才被Web服务器处理。它先被Web服务器处理成为一个后缀名为“.java”的Servlet类,然后被编译为一个后缀名为“.class”的文件。该编译后的Servlet被Web服务器调用,去处理客户端或其他的Servlet的请求。一般来说,它不会像8.1.2节里第二步描述的那样进行那么复杂的处理,而仅仅是把原始的JSP文件所表示的整个HTML页面作

7、为请求的结果返回到客户端。,1JSP出现之前Servlet的使用状况,JSP是Servlet发展后期的产物。在没有JSP之前,就已经出现了Servlet技术。这时的Servlet相应客户端请求就像8.1.1节里第3小节描述的那样,是利用输出流动态生成整个HTML页面。所以输出的内容包括每一个HTML标签和每个在HTML页面中出现的内容。然后将其返回到客户端显示。HTML文件包括大量的HTML标签、大量的静态文本及格式等,以及所有的表现逻辑,包括布局、色彩及图像等。这些内容都必须耦合在Java代码中,这些的确让人不胜其烦,也导致Servlet的开发效率极为低下。,2JSP出现后的状况,JSP的出

8、现弥补了这种不足,因为JSP文件是通过在标准的HTML页面中插入Java代码形成的。其静态的部分无须Java程序控制,只有那些需要从数据库读取并根据程序动态生成信息时,才使用Java脚本控制。当JSP技术出现之后,它里面可以插入很多HTML标签,更方便于编写和修改要返回的HTML文件。所以主要用JSP文件来动态生成HTML文件,然后返回客户端。现在的Servlet,当需要将整个页面作为结果返回时,它不再由其自己去处理,而是调用JSP文件,用它动态产生整个HTML页面,然后返回到客户端。 说明:对比 jspTest.jsp和与之对应的jspTest_jsp.Java文件可以看出,使用JSP的好处

9、是,在实际开发中,一个开发者即使不了解上面的Java代码,也依然不会影响JSP页面的编写和设计。因为这些Java代码是由Web容器负责生成的。,8.2 Servlet的生命周期,Servlet的生命周期指的是Servlet从被Web服务器加载到它被销毁的整个生命过程。这个过程可以用图8-2来描述。,8.2 Servlet的生命周期,从图8-2可以看出,Servlet的生命周期按照先后次序一般分为以下几个阶段。 Web服务器装载Servlet:Web服务器启动后,它会根据每个工程的web.xml文件去查找该工程中的Servlet。并且找到这些Servlet的Class文件所在的地址,将它们载入到

10、Web容器中。不同的Servlet被Web服务器加载的次序不同。通过web.xml文件可以配置每个Servlet载入的次序。一般来说,Servlet在服务器启用时就会被Web服务器加载,而JSP文件只有在用户访问到该页面时才会被动态载入。 创建一个Servlet实例,这时会调用该Servlet的构造函数去创建一个具体的对象。 经过以上两个步骤后,这时如果有客户端请求,Web服务器就会调用Servlet对象的init()方法。 接着Web服务器调用Servlet的service()方法去接收请求,处理请求,并把处理结果返回。 销毁:Servlet实例被销毁,这是通过调用Servlet的destr

11、oy()方法来实现的。,8.3 开发一个简单的Servlet程序,下面通过一个具体的Servlet例子来说明使用Servlet的一般方法和步骤。读者也可以通过这个例子进一步理解Servlet的概念和功能,以及它与JSP文件的不同之处。,8.4 小 结,本章讲解了Servlet的概念、特点、生命周期,并结合实例分析了Servlet与JSP的区别和联系。本章的重点是弄清楚什么是Servlet,它与前面讲的JSP究竟有何不同,并且要通过实例了解Servlet配置和使用的过程。通过本章的学习读者应该明晰Servlet的概念,初步理解它的使用方法。Servlet的生命周期对于初学者可能一时理解的不会很清楚,对于该内容读者先在头脑中建立一个模糊概念,相信通过以后的使用一定能够深入理解。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报