【JavaWeb】Servlet(崔老师版)

编程入门 行业动态 更新时间:2024-10-25 22:27:32

【JavaWeb】Servlet(崔<a href=https://www.elefans.com/category/jswz/34/1768649.html style=老师版)"/>

【JavaWeb】Servlet(崔老师版)

文章目录

  • 1.概述
    • 1.1 JavaWeb三大组件
    • 1.2 Servlet作用
  • 2.ServletConfig接口
  • 3.Servlet接口
    • 3.1 实现Servlet的方式
    • 3.2 Servlet生命周期
  • 4.HttpServlet抽象类
  • 5.ServletContext
    • 5.1 概述
    • 5.2 获取ServletContext
    • 5.3 JavaWeb四大域对象
    • 5.4 获取应用初始化参数
    • 5.5 ServletContext获取资源

1.概述

1.1 JavaWeb三大组件

  • Servlet
  • 监听器
  • 过滤器

1.2 Servlet作用

  • 接收请求参数
  • 处理请求
  • 完成响应

2.ServletConfig接口

ServletConfig 类从类名上来看,就知道是 Servlet 程序的配置信息类。

Servlet 程序和 ServletConfig 对象都是由 Tomcat 负责创建,我们负责使用。
每个 Servlet 程序创建时,就创建一个对应的 ServletConfig 对 象。

3.Servlet接口

3.1 实现Servlet的方式

  • 实现javax.servlet.Servlet接口
  • 继承javax.servlet.GenericServlet类
  • 继承javax.servlet.http.HttpServlet类


(1)servlet接口:直接去实现servlet接口的话,要实现的功能过多,开发不方便
(2)GenericServlet:将Servlet接口中其他的方法做了默认空实现,只将service()方法作为抽象。
将来定义Servlet类时,可以继承GenericServlet,实现service()方法即可。
(3)HttpServlet: 对http协议的一种封装,简化操作,使用方法如下:
① 定义类继承HttpServlet
② 复写doGet/dopost方法

3.2 Servlet生命周期


注意:
(1)service每一次处理请求都会调用,但是init方法和destroy只在创建或者销毁的时候调用一次。
(2)servlet是单例的,一个servlet类只会对应一个servlet类的对象。但是servlet类可能有多个。
(3)线程不安全的,所以效率高。
(4)servlet类由我们来写,但是servlet对象是由服务器创建的,并且由服务器调用其中的方法。

4.HttpServlet抽象类


servlet细节:
web.xml文件的继承

5.ServletContext

一个项目只有一个ServletContext。我们可以在N个Servlet中获取这个唯一的对象,所以使用它可以在Servlet中传递数据。(不让servlet直接传递数据是为了解耦合)

5.1 概述

5.2 获取ServletContext

ServletConfig
GenericServlet
HttpSession
ServletContextEvent
以上四个类都有方法getServletContext能获取ServletContext对象。

5.3 JavaWeb四大域对象

域对象在servlet中传递数据,所以与对象要有存数据和取数据的功能。

  • PageContext
  • ServletRequest
  • HttpSession
  • ServletContext

5.4 获取应用初始化参数

5.5 ServletContext获取资源

ServletContext可以获取web应用下的资源。

更多推荐

【JavaWeb】Servlet(崔老师版)

本文发布于:2024-03-13 03:05:16,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1733047.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:老师   JavaWeb   Servlet

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!