HttpRequest抽象类

  public abstract class HttpServlet extends GenericServlet

  实现的接口有:Serializable, Servlet, ServletConfig

  一、介绍

  提供一个抽象类,以便于子类创建适用于Web站点的HTTP Servlet。

  HttpServlet的子类,通常必须要实现至少一个方法,通常是下面这些:

  • doGet, if the servlet supports HTTP GET requests
  • doPost, for HTTP POST requests
  • doPut, for HTTP PUT requests
  • doDelete, for HTTP DELETE requests
  • init方法和destroy方法, to manage resources that are held for the life of the servlet
  • getServletInfo(), which the servlet uses to provide information about itself

  

  几乎没有理由来重写service方法。 service方法根据每个HTTP request的类型,将它们分配给相应的处理程序方法。(也就是说,具体的处理方法都是通过service方法来进行调度的)

  同样,几乎没有理由重写doOptions和doTrace方法。

  Servlet通常在多线程服务器上运行,因此请注意,servlet必须处理并发请求,并小心地同步对共享资源的访问。

  二、方法

  1、public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException

  将客户端请求分派给受保护的service方法,因此没有必要重写此方法。

  2、protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException

  接收来自公共的service方法的标准HTTP请求,并将它们分派到此类中定义的doXXX方法。

  它是Servlet.service方法的HTTP特定版本,且没有必要重写。

  3、protected void doXXX()

  和http的请求类型有关:GET,POST,HEAD,PUT,DELETE,OPTIONS,TRACE

  4、protected long getLastModified(HttpServletRequest req)

  返回HttpServletRequest对象上次修改时间(以毫秒为单位),自从格林尼治标准时间1970年1月1日午夜。 如果时间未知,则此方法返回负数(默认值)。

  支持HTTP GET请求并可以快速确定最后修改时间的Servlet应覆盖此方法。 这使浏览器和代理缓存更有效地工作,减少了服务器和网络资源的负载。

Java EE javax.servlet.http中的HttpRequest抽象类的更多相关文章

  1. Java EE javax.servlet.http中的HttpSession接口

    HttpSession接口 public interface HttpSession (https://docs.oracle.com/javaee/7/api/javax/servlet/http/ ...

  2. Java EE javax.servlet中的ServletContext接口

    ServletContext接口 public interface ServletContext (https://docs.oracle.com/javaee/7/api/javax/servlet ...

  3. Java EE javax.servlet中的Servlet接口

    Servlet接口 public interface Servlet 其实现类有:FaceServlet.GenericServlet.HttpServlet 一.介绍 Servlet接口定义了所有s ...

  4. Java EE javax.servlet中的ServletResponse接口

    ServletResponse接口 public interface ServletResponse 子接口:HttpServletResponse 实现类:HttpServletResponseWr ...

  5. Java EE javax.servlet中的ServletRequest接口

    ServletRequest接口 public interface ServletRequest 子接口:HttpServletRequest 实现类:HttpServletRequestWrappe ...

  6. Java EE javax.servlet中的RequestDispatcher接口

    RequestDispatcher接口 public interface RequestDispatcher 一.介绍 定义一个对象,从客户端接收请求并将其发送到服务器上的任何资源(例如servlet ...

  7. Java EE javax.servlet中的ServletConfig接口

    ServletConfig接口 public interface ServletConfig 实现类:GenericServlet.HttpServlet 一.介绍 一个供servlet容器使用配置对 ...

  8. Java EE javax.servlet ServletContainerInitializer接口

    ServletContainerInitializer接口 public interface ServletContainerInitializer 一.介绍 该接口,允许在 web 应用程序的启动阶 ...

  9. 1,eclipse导入项目jdk版本不一样解决方案 2,java报javax.servlet.jsp cannot be resolved to a type

    一:eclipse导入项目jdk版本不一样解决方案 参考博文: https://www.cnblogs.com/chenmingjun/p/8472885.html 选中项目右键 --> Pro ...

随机推荐

  1. selenium知识点

    1. 导包 from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait from se ...

  2. mybatis中添加时间字符串条件

    <if test="operatorDateStart != null and operatorDateStart !='' " >operator_date > ...

  3. 搬运 centos7.2 apache 绑定二级目录 访问依然是apache页面

    <VirtualHost *:80>ServerName xx.comDocumentRoot /var/www/html/xx</VirtualHost>

  4. leetcode-hard-array-179 Largest Number-NO

    mycode  写的很复杂,还报错... 参考: class Solution: # @param {integer[]} nums # @return {string} def largestNum ...

  5. C++ STL——string和vector

    目录 一 STL基本概念 二 string容器 三 vector容器 3.1 vector动态增长原理 3.2 vector构造函数 3.3 vector常用赋值操作 3.4 vector大小操作 3 ...

  6. zabbix监控nginx+php-fpm,mysql+主从复制+高可用,tomcat,redis web状态

    zabbix监控对象区分 使用SNMP监控交换 使用IPMI监控服务器硬件 使用Agent监控服务器 使用JMX监控JAVA SNMP监控流程 交换机上开启snmp 在zabbix上添加监控(设置SN ...

  7. LC 756. Pyramid Transition Matrix

    We are stacking blocks to form a pyramid. Each block has a color which is a one letter string, like ...

  8. Python数据分析中 DataFrame axis=0与axis=1的理解

    python中的axis究竟是如何定义的呢?他们究竟代表是DataFrame的行还是列? 直接上代码people=DataFrame(np.random.randn(5,5), columns=['a ...

  9. springboot2.0+redis实现消息队列+redis做缓存+mysql

    本博客仅供参考,本人实现没有问题. 1.环境 先安装redis.mysql 2.springboot2.0的项目搭建(请自行完成),本人是maven项目,因此只需配置,获取相应的jar包,配置贴出. ...

  10. php版本:实现过滤掉广告、色情、政治相关的敏感词

    现在网络上还是很乱,尤其充斥着各种广告.色情.政治相关的内容,很明显这是不符合我们国家的法律的,所以为了一个产品能够健康长久的活下去,最好还是采用一定的策略过滤或者提醒用户不要发这种内容.不过说起来容 ...