Servlet接口、类详解一文看懂

44 篇文章 0 订阅
28 篇文章 0 订阅

Servlet接口、类

一、Servlet体系结构

在这里插入图片描述


二、Servlet接口、类

1.Servlet接口

  • Servlet接口概述

    • 定义了所有Servlet需要实现的方法
  • Servlet接口的常用方法
    在这里插入图片描述


2.ServletConfig接口

  • ServletConfig概述
    • 在Servlet初始化过程中获取配置信息
    • 一个Servlet只有一个ServletConfig对象
  • ServletConfig的常用方法

在这里插入图片描述


3.GenericServlet抽象类

  • GenericServlet概述
    • 提供了Servlet与ServletConfig接口的默认实现方法
  • GenericServlet的常用方法
    在这里插入图片描述

4.HttpServlet抽象类

  • HttpServlet概述
    • 继承于GenericServlet
    • 处理HTTP协议的请求和响应
  • HttpServlet的常用方法

在这里插入图片描述


请求、响应相关接口

在这里插入图片描述

  • HttpServletRequest是ServletRequest的子接口
  • HttpServletResponse是ServletResponse的子接口

HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,开发人员通过这个对象的相关方法,即可以获得客户的这些信息。
servletRequest是接口,httpServletRequest是实现,但是有些方法是httpServletRequest独有的,比如getSession().。
HttpServletRequest接口是继承自ServletRequest接口的。增加了和HTTP相关的一些方法。而所谓request(在JSP中使用的)其实只是规范中的一个名称而已。它当然是一个对象,但并不是SUN提供的,这是由各个不同的Servlet提供商编写的,SUN只是规定这个类要实现HttpServletRequest接口,并且规定了各个方法的用途,但具体是什么类是由各个提供商自己决定的。


5.ServletRequest接口

  • ServletRequest概述
    • 获取客户端的请求数据
  • ServletRequest的常用方法
    在这里插入图片描述

6.HttpServletRequest接口

  • HttpServletRequest概述
    • 除了继承servletRequest接口中的方法,还增加了一些用于读取请求信息的方法
  • HttpServletRequest的常用方法

在这里插入图片描述


7.ServletResponse接口

  • ServletResponse概述
    • 向客户端发送响应数据
  • ServletResponse接口的常用方法

在这里插入图片描述

8.HttpServletResponse接口

  • HttpServletResponse概述
    • 除了继承ServletResponse接口中的方法,还增加了新的方法
  • HttpServletResponse的常用方法

在这里插入图片描述


9.ServletContext接口

  • ServletContext概述
    • 获取Servlet上下文
  • ServeltContext的常用方法
    在这里插入图片描述

三、Servlet与JSP内置对象的关系

在这里插入图片描述


四、Servlet的配置

1.Servlet初始化参数配置

<web-app>
    <servlet>
        <servlet-name>HelloServlet</servlet-name>
        <servlet-class>org.jbit.servlet.HelloServlet</servlet-class>
        <init-param>
            <param-name>initParam</param-name>
            <param-value>Hello Servlet</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>HelloServlet</servlet-name>
        <url-pattern>/HelloServlet</url-pattern>
    </servlet-mapping>
</web-app>

获取:

通过实现的getInitParameter(String name)方法来获取初始化参数
getInitParameterNames()返回所以的参数名称

在这里插入图片描述


2.配置Servlet上下文

<web-app>
    <context-param>
        <param-name>contextParam</param-name>
        <param-value>Hello Servlet</param-value>
    </context-param>
    <!--省略其他配置-->
</web-app>

读取Servlet上下文:

public class HelloServlet extends HttpServlet {
        // …省略其他代码
        public void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            System.out.println("处理请求时,doGet()方法被调用。");
            String initParam = getInitParameter("initParam");
            String contextParam = this.getServletContext().getInitParameter("contextParam");
            System.out.println("Servlet初始化参数" + initParam);
            System.out.println("系统初始化参数" + contextParam);
        }
    }
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小吕努力变强

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值