Servlet与HttpServlet初步认识

Servlet与HttpServlet初步认识,第1张

Servlet简介
Servlet是Java Servlet的简称,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。主要功能在于获取请求,返回响应。广义的Servlet是指任何实现了这个Servlet接口的类;狭义Servlet是指Java语言实现的一个接口
Servlet 架构

Servlet 任务

  • 读取客户端(浏览器)发送的显式的数据。这包括网页上的 HTML 表单,或者也可以是来自 applet 或自定义的 HTTP 客户端程序的表单。
  • 读取客户端(浏览器)发送的隐式的 HTTP 请求数据。这包括 cookies、媒体类型和浏览器能理解的压缩格式等等。
  • 处理数据并生成结果。这个过程可能需要访问数据库,执行 RMI 或 CORBA 调用,调用 Web 服务,或者直接计算得出对应的响应。
  • 发送显式的数据(即文档)到客户端(浏览器)。该文档的格式可以是多种多样的,包括文本文件(HTML 或 XML)、二进制文件(GIF 图像)、Excel 等。
  • 发送隐式的 HTTP 响应到客户端(浏览器)。这包括告诉浏览器或其他客户端被返回的文档类型(例如 HTML),设置 cookies 和缓存参数,以及其他类似的任务。

Servlet 包

  • Java Servlet 是运行在带有支持 Java Servlet 规范的解释器的 web 服务器上的 Java 类。
  • Servlet 可以使用 javax.servlet 和 javax.servlet.http 包创建,它是 Java 企业版的标准组成部分,Java 企业版是支持大型开发项目的 Java 类库的扩展版本。
  • 这些类实现 Java Servlet 和 JSP 规范。在写本教程的时候,二者相应的版本分别是 Java Servlet 2.5 和 JSP 2.1。
  • Java Servlet 就像任何其他的 Java 类一样已经被创建和编译。在安装 Servlet 包并把它们添加到计算机上的 Classpath 类路径中之后,就可以通过 JDK 的 Java 编译器或任何其他编译器来编译 Servlet。

servlet在容器中命名并指定url

当要为一个servlet容器进行相应的配置时,需要先对其进行别名的命名,这个别名是任意的,主要是用于在映射指定URL时要选取所需要访问的servlet。

test

之后写入其全类名,全类名就是带上其所在的包名

com.lll.ServletDemo

然后用映射指定其URL,但是要先选择所要指定的servlet,也就是上面所说的别名。

test
		/test

注意不要忘记加入   /

示例图


	test 
	com.lll.ServletDemo
    
    
    test
		/demo
    

HttpServlet

HttpServlet简介
        HttpServlet是Servlet接口的一个实现类,并且它是一个抽象的类,servlet.http包中定义了采用HTPP协议的(一个无状态的协议的)HttpServlet类。HttpServlet 指能够处理 HTTP 请求的 servlet,它在原有 Servlet 接口上添加了一些与 HTTP 协议处理方法,它比 Servlet 接口的功能更为强大。因此开发人员在编写Servlet时,通常应继承这个类,而避免直接去实现Servlet接口。

        HttpServlet 在实现 Servlet 接口时,覆写了 service 方法,该方法体内的代码会自动判断用户的请求方式,如为 GET 请求,则调用 HttpServlet 的 doGet 方法,如为 Post 请求,则调用 doPost 方法。因此,开发人员在编写 Servlet 时,通常只需要覆写 doGet 或 doPost 方法,而不要去覆写 service 方法。
HttpServlet响应流程
1、Web客户端向Servlet容器发送http请求。
2、Servlet容器解析了Web客户端发来的请求。
3、Servlet容器创建了一个HttpRequest对象,在这个对象中封装了请求信息。
4、Servlet容器创建了一个HttpResponse对象。
5、Servlet容器调用了HttpServlet的service方法,将HttpRequest和HttpResponse
作为参数传递给了HttpServlet对象。
6、HttpServlet调用HttpRequest有关的方法,获取HTTP请求信息。
7、HttpServlet调用HttpResponse有关的方法,生成响应数据。
8、8.Servlet容器把HttpServlet的响应结果传给Web客户。
(其中HttpServlet首先必须读取Http请求的内容,Servlet容器负责创建HttpServlet对象,
并把Http请求直接封装到HttpServlet对象中。)

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/730734.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存