尚硅谷教学课件JavaWEB1.尚硅谷佟刚JavaWEBServlet1章节

上传人:E**** 文档编号:90862742 上传时间:2019-06-19 格式:PPTX 页数:33 大小:919.39KB
返回 下载 相关 举报
尚硅谷教学课件JavaWEB1.尚硅谷佟刚JavaWEBServlet1章节_第1页
第1页 / 共33页
尚硅谷教学课件JavaWEB1.尚硅谷佟刚JavaWEBServlet1章节_第2页
第2页 / 共33页
尚硅谷教学课件JavaWEB1.尚硅谷佟刚JavaWEBServlet1章节_第3页
第3页 / 共33页
尚硅谷教学课件JavaWEB1.尚硅谷佟刚JavaWEBServlet1章节_第4页
第4页 / 共33页
尚硅谷教学课件JavaWEB1.尚硅谷佟刚JavaWEBServlet1章节_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《尚硅谷教学课件JavaWEB1.尚硅谷佟刚JavaWEBServlet1章节》由会员分享,可在线阅读,更多相关《尚硅谷教学课件JavaWEB1.尚硅谷佟刚JavaWEBServlet1章节(33页珍藏版)》请在金锄头文库上搜索。

1、讲师:佟刚 新浪微博:尚硅谷-佟刚,JavaWEB-Servlet(1),内容概要,JavaWEB 概述 利用 Eclipse 搭建 JavaWEB 运行环境 Servlet 接口 在 web.xml 描述文件中配置 Servlet Servlet 生命周期 ServletConfig 接口 ServletContext 接口 配置并获取当前 Servlet 的初始化参数 配置并获取当前 WEB 应用的初始化参数,JavaWeb应用的概念,在Sun的Java Servlet规范中,对Java Web应用作了这样定义:“Java Web应用由一组Servlet、HTML页、类、以及其它可以被绑定

2、的资源构成。它可以在各种供应商提供的实现Servlet规范的 Servlet容器 中运行。” Java Web应用中可以包含如下内容: Servlet JSP 实用类 静态文档如HTML、图片等 描述Web应用的信息(web.xml),Servelt 与 Servlet 容器,Web 浏览器,Web服务器,Web 服务器,HTTP请求,静态页面,Servlet 容器,jsp,Servlet,数据库,HTTP相应,Servlet容器的概念,Servlet容器为JavaWeb应用提供运行时环境,它负责管理Servlet和JSP的生命周期,以及管理它们的共享数据。 Servlet容器也称为JavaW

3、eb应用容器,或者Servlet/JSP容器。 目前最流行的Servlet容器软件括: Tomcat Resin J2EE服务器(如Weblogic)中也提供了内置的Servlet容器,Tomcat 简介,Tomcat 是一个免费的开放源代码的 Servlet 容器,它是 Apache 软件基金会的一个顶级项目,由 Apache,Sun和其他一些公司及个人共同开发而成。由于有了 Sun 的参与与支持,最新的 Servlet 和 JSP 规范总是能在 Tomcat 中的到体现。,Tomcat 的目录结构,Tomcat 的目录层次结构,存放启动和关闭 Tomcat 的脚本文件,存放 Tomcat

4、服务器的各种配置文件,存放 Tomcat 服务器和所有 web 应用 程序需要访问的 jar 文件,存放 Tomcat 的日志文件,存放 Tomcat 运行时产生的临时文件,当发布 web 应用程序时,通常把 web 应用程序的目录及文件放到这个目录下,Tomcat 将 JSP 生成的 Servlet 源文件和字节码文件放到这个目录下,运行 Tomcat,1. 配置 java_home 或 jre_home 2. 双击 bin 目录下的 startup.bat 文件 3. 在地址栏中输入 http:/localhost:8080/,关闭 Tomcat & 配置 Tomcat 的端口号,1.双击

5、 bin 目录下的 shutdown.bat 文件关闭 Tomcat 服务器 2. 修改 Tomcat 默认的端口号: 打开 conf 目录下的 server.xml 文件 修改端口号,Tomcat 启动分析1,判断 “catalina_home” 环境变量 是否为空,判断当前目录下是否存在 bincatalina.bat 文件,结论: 执行 startup.bat ,实际上执行的是 catalina.bat,Tomcat 启动分析2,若想在任意目录下都能启动 Tomcat,则需设置 CATALINA_HOME 环境变量 直接执行 catalina.bat 时需要带上命令行参数 常用的参数是s

6、tart,run 和 stop,Tomcat 的管理程序,Tomcat 提供了一个管理程序:manager,用于部署到 Tomcat 服务器中的 web 应用程序 要访问 manager web 应用程序,需要添加具有管理员权限的账号,编辑 conf 目录下的 tomcat-users.xml 文件,添加 manager 角色,设置用户名和密码,Web 程序结构1,一个 web 应用程序是由一组 Servlet,HTML 页面,类,以及其它的资源组成的运行在 web 服务器上的完整的应用程序,以一种结构化的有层次的目录形式存在 组成 web 应用程序的这些文件要部署在相应的目录层次中,根目录代

7、表整个 web 应用程序的”根” 通常将 web 应用程序的目录放在 webapps 目录下,在 webapps 目录下的每一个子目录都是一个独立的 web 应用程序,子目录的名字就是 web 应用程序的名字,也就是 web 应用程序的“根”。用户通过 web 应用程序的”根”来访问 web 应用程序中的资源,Web 程序结构2,Servlet 规范中定义了 web 应用程序的目录层次:,Web应用程序的根目录,属于此Web应 用程序的所有文件都存放在这个目录下,存放Web应用程序的部 署描述符文件web.xml,存放Servlet和其他有用 的类文件,存放Web应用程序需要用到的JAR文 件

8、,这些JAR文件中可以包含Servlet、 Bean和其他有用的类文件,web.xml文件包含Web 应用程序的配置和部署 信息,Web 程序结构,几点说明: WEB-INF目录下的classes和lib目录都可以存放Java的类文件,在Servlet容器运行时,Web应用程序的类加载器将首先加载classes目录下的,其次才是lib目录下的类。如果这两个目录下存在同名的类,起作用的将是classes目录下的类 WEB-INF 是一个特殊的目录(所有字母都要大写)。这个目录并不属于Web应用程序可以访问的上下文路径的一部分,对客户端来说,这个目录是不可见的。但该目录下的内容对于Servlet代

9、码是可见的,配置任意目录下的Web应用程序,在Web服务器中可以配置虚拟目录,而虚拟目录所对应的真实目录可以在任何路径下。 在Tomcat服务器中,主要在 XML 配置文件中通过元素的设置来完成的。一个元素就表示一个Web应用程序,运行在特定的虚拟主机中。 元素是元素的子元素,可以在confserver.xml文件中设置Context元素。,元素的常用属性,配置任意目录下的Web应用程序 2,元素是元素的子元素,可以在confserver.xml文件中设置Context元素。 使用docBase属性指定Web应用程序的真实路径。将属性reloadable设置为true,Tomcat在运行时会自

10、动监测Servlet类的改动,如果发现有类被更新,Tomcat服务器将自动重新加载该Web应用程序。这样,在开发时,就不需要频繁重启Tomcat了,配置任意目录下的Web应用程序 3,还可以在conf目录下依次创建Catalinalocalhost目录,然后在localhost目录下为 test 这个Web应用程序建立 test.xml 文件,编辑这个文件输入以下内容 从Tomcat 5开始,不建议直接在server.xml文件中配置元素,因为server.xml文件作为Tomcat的主要配置文件,一旦Tomcat启动后,将不会再读取这个文件,因此无法在Tomcat服务器启动时发布Web应用程

11、序。如果在其他地方配置元素,那么在Tomcat运行时,也可以发布Web应用程序。 从Tomcat 5.5开始,在confCatalinalocalhost目录下创建XML配置文件来配置Web应用程序,Tomcat将以XML文件的文件名将作为Web应用程序的上下文路径,而不理会在元素的path属性中指定的上下文路径是什么。由于Tomcat 5.5之后的版本是以XML配置文件的文件名作为Web应用程序的上下文路径的,因此在配置元素时,可以不使用path属性。,http:/localhost:8989/helloworld2/hello.jsp,reloadable:当修改了 docBase 下的

12、classes 目录下的 class 文件时, tomcat 服务器是否会重新加载 WEB 应用,Servlet 简介,Java Servlet是和平台无关的服务器端组件,它运 行在Servlet容器中。Servlet容器负责Servlet和 客户的通信以及调用Servlet的方法,Servlet和客 户的通信采用“请求/响应”的模式。 Servlet可完成如下功能: 创建并返回基于客户请求的动态HTML页面。 创建可嵌入到现有HTML 页面中的部分HTML 页面(HTML 片段)。 与其它服务器资源(如数据库或基于Java的应用程序)进行通信。,Servlet容器响应客户请求的过程,Serv

13、letAPI,http:/localhost:8989/day_29/hello,/hello,Servlet容器响应客户请求的过程,Servlet引擎检查是否已经装载并创建了该Servlet的实例对象。如果是,则直接执行第步,否则,执行第步。 装载并创建该Servlet的一个实例对象:调用该 Servlet 的构造器 调用Servlet实例对象的init()方法。 创建一个用于封装请求的ServletRequest对象和一个代表响应消息的ServletResponse对象,然后调用Servlet的service()方法并将请求和响应对象作为参数传递进去。 WEB应用程序被停止或重新启动之前,

14、Servlet引擎将卸载Servlet,并在卸载之前调用Servlet的destroy()方法。,Servlet的注册与运行,Servlet程序必须通过Servlet容器来启动运行,并且储存目录有特殊要求,通需要存储在WEB-INFclasses目录中。 Servlet程序必须在WEB应用程序的web.xml文件中进行注册和映射其访问路径,才可以被Servlet引擎加载和被外界访问。 一个元素用于注册一个Servlet,它包含有两个主要的子元素:和,分别用于设置Servlet的注册名称和Servlet的完整类名。 一个元素用于映射一个已注册的Servlet的一个对外访问路径,它包含有两个子元素

15、:和,分别用于指定Servlet的注册名称和Servlet的对外访问路径。,Servlet映射的细节,同一个Servlet可以被映射到多个URL上,即多个元素的子元素的设置值可以是同一个Servlet的注册名。 在Servlet映射到的URL中也可以使用*通配符,但是只能有两种固定的格式:一种格式是“*.扩展名”,另一种格式是以正斜杠(/)开头并以“/*”结尾。, AnyName *.do AnyName /action/* ,ServletConfig 接口,Servlet在有些情况下可能需要访问Servlet容器或借助Servlet容器访问外部的资源,所以,Serlvet引擎需要将表示Se

16、rvlet容器的对象传递给Servlet。另外,在web.xml文件中为某个Servlet设置的友好名称和初始化参数等信息也需要传递给该Servlet Servlet引擎将代表Servlet容器的对象(ServletContext)和Servlet的配置参数信息一并封装到一个称为ServletConfig的对象中,并在初始化Servlet实例对象时传递给该Servlet。ServletConfig接口则用于定义ServletConfig对象需要对外提供的方法,以便在Servlet程序中可以调用这些方法来获取有关信息。 Servlet引擎调用Servlet的实例对象的init(ServletConfig config)方法将ServletConfig对象传递给Servlet。Servlet.getServletConfig()方法必须返回init(ServletConfig config)方法传递进来的这个ServletConfig对象的引用。,ServletConfig接口的方法,g

展开阅读全文
相关资源
相关搜索

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

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号