Servlet

servlet是Server Applet的简称,servlet是运行在服务器上的一个小程序,用来处理服务器请求的.一般的网页程序,是通过浏览器访问来实现的,在这个过程中,浏览器发送访问请求,服务器接收请求,并对浏览器的请求作出相应的处理.这就是B/S模型(浏览器-服务器模型).而servlet就是对请求作出处理的组件,运行于支持Java的应用服务器中.

Servlet的继承关系

从上到下为

javax. servlet.servlet接口
javax.servlet.Genericservlet抽象类
javax.servlet.http.Httpservlet抽象子类

javax.servlet.servlet 接口
在这里插入图片描述

javax.servlet.Genericservlet 抽象类
在这里插入图片描述

javax.servlet.http.Httpservlet 抽象子类
在这里插入图片描述

相关方法

在Servlet接口处有三个方法
在这里插入图片描述

void init (config) -初始化方法

void service(request,response) -服务方法

当客户端处发送请求时,service方法会被自动调用,

在子类Genericservlet()中,在这里插入图片描述service方法是抽象的

在更下一级子类Httpservlet()中不是抽象的
在这里插入图片描述
且有代码String method = req.getMethod();获取请求的方式–是get / post/put/delete 等
通过if判断,根据请求方式不同,决定调用不同的do方法
在这里插入图片描述

void destory () -销毁方法

小结

1)继承关系:Httpservlet -> Genericservlet -> servlet2) servlet中的核心方法: init() , service ( ) , destroy ()
3)服务方法︰当有请求过来时,service方法会自动响应(其实是tomcat容器调用的)
在Httpservlet中我们会去分析请求的方式︰到底是get、post、head还是delete等等然后再决定调用的是哪个do开头的方法
那么在Httpservlet中这些do方法默认都是405的实现风格-要我们子类去实现对应的方法,否则默认会报405
4)因此,我们在新建servlet时,我们才会去考虑请求方法,从而决定重写哪个do方法

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐