长生的梦呓


  • 归档
  • 算法
  • 基础
  • 关于

  • 分类
  • 日志
  • Servlet
  • Archive
  • 数据结构
  • IO 流

  • 标签
  • 友链
  • MyBatis
  • About
  • Spring 5
  • Java SE
  • Java EE
  • Algorithms
  • 新特性
  • 位运算技巧

  • 搜索
内网穿透 项目实战 数据库 MySQL 安卓踩坑 开发工具 设计模式 Enum 枚举 Linux MyBatis-plus JSON IDEA Transactions AOP IO 流 DP IoC 与 DI 位运算技巧 工具类 学习技巧 Git JDK 排序 Spring Boot Spring MVC Spring Framework MyBatis Log4J Regex Jsoup JDBC 数据结构 递推 递归 算法 Servlet与JSP 小难 中等 简单

(5)Servlet的概念理解

发表于 2020-03-31 | 8 | 阅读次数 316

一、Servlet概念

1.概念

Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器。

狭义的Servlet是指Java语言实现的一个接口,
广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。

2.作用

Servlet的作用就是能够处理浏览器带来的HTTP请求,并且返回响应给浏览器。从而实现浏览器和服务器的交互。

二、Servlet理解

我理解Servlet是指任何实现了Servlet这个接口的类。

我们在Java EE基础(3):第一个Web项目中创建过一个Servlet,即那个继承了HttpServlet的Java类。

1.问:

  我们的Java类MyServlet也没有implements实现Servlet接口呀,只是继承了HttpServlet这个抽象类,那为什么我创建的MyServlet是一个Servlet呢?

2.答:

  我MyServlet类没有实现Servlet接口,但是我由父类呀,我父类或者父类的父类实现了Servlet不就可以了。

3.问题详解:

  确实如此,在MyServlet类我们并没有实现Servlet接口,但是他有父类HttpServlet。
  我们用离线文档来看看他的父类==HttpServlet==:
  Tomcat离线文档下载链接:Tomcat离线文档下载
在这里插入图片描述
  由上图我们可以看出HttpServlet继承了抽象类GenericServlet,只implements实现了 java.io.Serializable。

  HttpServlet并没有实现Servlet接口

  我们继续看抽象类==GenericServlet==:
在这里插入图片描述
  上面这个图中,我们看到HttpServlet的父类GenericServlet分别实现了Servlet、ServletConfig、java.io.Serializable接口。

  由此得知,为什么我创建的MyServlet是一个Servlet。


三、Servlet的实现

从上面的问题可以看出,让自己创建的普通Java类成为一个Servlet我们有三种方式。

分别是:

  • 继承HttpServlet(我们常用的就是这种方式)
  • 继承GenericServlet类
  • 实现Servlet

参考:

servlet百度百科:https://baike.baidu.com/item/servlet/477555?fr=aladdin

  • 本文作者: 长生的梦呓
  • 本文链接: https://shengjava.com/archives/5servlet的概念理解
  • 版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0 许可协议。转载请注明出处!
# 内网穿透 # 项目实战 # 数据库 # MySQL # 安卓踩坑 # 开发工具 # 设计模式 # Enum # 枚举 # Linux # MyBatis-plus # JSON # IDEA # Transactions # AOP # IO 流 # DP # IoC 与 DI # 位运算技巧 # 工具类 # 学习技巧 # Git # JDK # 排序 # Spring Boot # Spring MVC # Spring Framework # MyBatis # Log4J # Regex # Jsoup # JDBC # 数据结构 # 递推 # 递归 # 算法 # Servlet与JSP # 小难 # 中等 # 简单
(4)简化第一个Web项目部署
(6)Servlet的运行流程
  • 文章目录
  • 站点概览
长生的梦呓

长生的梦呓

110 日志
39 分类
40 标签
RSS
E-mail CSDN
Creative Commons
Links
  • CSDN 地址
  • waltz26
  • Ryan Wang's Blog
  • JohnNiang's Blog
  • 廖雪峰
  • 菜鸟教程
© 2021 长生的梦呓
浙ICP备20005262号-1