Java Web 之 Servlet
1.Servlet的定义:
Servlet是Web容器的最基本组成单元,是最基础的Java Web技术。
2.Servlet的作用:
处理请求(HTTP请求),服务器会把接收到请求发送给Servlet处理。(HTTP请求是向Web服务器请求一种信息资源,
如 文本、图片、视频等)
Servlet无非就是一个java类,只不过这个类需要符合一些规范。
3.Servlet规范:
(1)必须实现javax.servlet.Servlet接口的所有方法。
(2)提供一个公开的无参数的构造方法。
(3)Servlet规范有两个包:javax.servlet和java.servlet.http两个包加起来34个接口和类
HttpServlet
ServletConfig
ServletContext
Filter
FilterConfig
FilterChain
RequestDispatcher
HttpServletRequest
HttpServletResponse
HttpSession
4.Servlet的使用:
继承GenericServlet抽象类或HttpServlet抽象类(一般继承后者)
然后重写下面方法中的一个,即可完成Servlet。
6.Servlet的工作原理图:
7.Servlet的生命周期:
tomcat是Servlet的运行环境,所以tomcat是servlet容器,tomcat是一个开源的Servlet容器,也是一个Web容器—用于处理静态HTML、CSS等。
在javax.servlet.Servlet接口中有三个重要的方法:
init() destroy() service()
这3个方法分别对应Servlet生命周期的三个阶段:加上Servlet是一个Java类,所以还有加载过程,一共是四个阶段:加载、初始化、提供服务和销毁。
加载:Servlet类加载到Java虚拟机中,并且实例化。
初始化:Web容器在初始化Servlet的时候会调用init()方法。
服务: 当有HTTP请求指向Servlet的时候,调用service()方法的过程,该方法体包含了该servlet的业务逻辑。
如果是继承自HttpServlet的话,根据HTTP请求类型的不同,业务逻辑会包含在doGet()和doPost()方法中。
销毁:回调方法destroy(),一般释放资源(如关闭数据库)的代码会放在该方法中。