Servlet基础

本文介绍了Servlet的基础知识,包括Servlet的概念、API、生命周期以及如何部署和访问Servlet。Servlet是基于Java的Web组件,用于处理客户端请求并生成动态内容。Servlet API包含通用和HTTP特定的接口,如Servlet、ServletConfig、HttpServletRequest和HttpServletResponse。Servlet生命周期涉及加载、初始化、服务和销毁四个阶段。通常,开发者需要重写doGet或doPost方法以处理HTTP请求。最后,通过web.xml配置文件部署Servlet,并通过请求URI访问。
摘要由CSDN通过智能技术生成

Servlet简介

什么是Servlet

Servlet是一个符合特规范的Java程序,是一个基于java技术的Web组件。Servlet运行在服务器端,由Servlet容器所管理,用于处理客户端请求并做出响应。
在这里插入图片描述
Servlet主要用于生成动态的内容,它可以接受和处理请求,并动态生成HTML内容对客户端进行响应 过程如下:
在这里插入图片描述

Servlet API

Servlet主要包含在两个包内,javax.servlet包中的类和接口时通用的不依赖协议的Servlet API,包括Servlet,ServletRequst,ServletResponse,ServletConfig,ServletContext接口及抽象类GenericServlet。
javax.servlet.http包中的类和接口是用于支持HTTP协议的Servlet API。

Servlet接口
Servlet接口定义了所有Servlet需要实现的方法,常用方法如下所示:
在这里插入图片描述
GenericServlet抽象类
GenericServlet抽象类实现了Servlet接口和ServletConfig接口,给出了除service()方法外的其他方法的简单实现,定义了通用的,不依赖于协议的Servlet。常用方法如下:
在这里插入图片描述
经验: 通常只需要重写不带参数的init()方法,如果重写带参数的init()方法,则应包含super.init(config)代码。
如果要编写一个通用的Servlet,只需要继承自GenericServlet类,实现service()方法即可。

HttpServlet抽象类
大多数的网络应用是通过HTTP协议访问资源的,因此我们编写的Servlet大多也是应用于处理HTTP协议的请求和响应,HttpServlet类继承自GenericServlet类,具有与GenericServlet类类似的方法,并提供了HTTP相关的实现。
在这里插入图片描述

经验:HttpServlet的Service()发给发相当于一个分发器,可以根据请求方法的类型,调用响应的doXXX()方法。所以在编写Servlet时只需要根据应用的需要,重写doGet()或doPost()方法即可。

ServletConfig接口
Servlet容器使用ServletConfig接口的实例在Servlet初始化期间向其传递配置信息。ServletConfig接口方法如下所示:
在这里插入图片描述

ServletContext接口
一个ServletContext接口的实例表示一个Web应用的上下文,Servlet使用ServletContext接口定义的方法与它的Servlet进行通信。JSP内置对象application就是ServletContext的实例。
Servlet容器厂商负责提供ServletContext接口的实现,容器在应用程序加载时创建ServletContext对象,ServletContext对象被Servlet容器中的所有Servlet共享。
在这里插入图片描述

ServletRequest和HttpServletRequest接口

ServletRequest接口
当客户请求时,由Servlet容器创建ServletRequest对象用于封装客户的请求信息,这个对象将被容器作为service()方法的参数之一传递给Servlet,Servlet能够利用ServletRequest对象获取客户端请求数据
在这里插入图片描述
HttpServletRequest接口

HttpServletRequest位于javac.servlet.http包中,

在这里插入图片描述

ServletResponse和HttpServletResponse接口

ServletResponse接口

Servlet容器在接受客户请求时,除了创建ServletRequest对象用于封装用户的请求信息外,还创建了一个ServletResponse对象。用于封装响应的数据,并且同时将这两个对象一并作为参数传递给Servlet,Servlet利用ServletRequest对象获取客户端请求数据,经过处理后由ServletResponse对象发送响应数据。
在这里插入图片描述
2.HttpServleResponse接口
在这里插入图片描述
Servlet体系结构
在这里插入图片描述
Servlet系统结构
在这里插入图片描述

Servlet的应用

创建Servlet 示例:

package com.ch07yx.servlet;

import java.io.*;

import ja
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值