一、简介:
Servlet是 Java Web中最核心组件:
1、用java语言编写的类;
2、Servlet对象由Servlet容器创建。
Servlet规范为Java Web应用定制了对象模型,对象模型中,不仅Servlet是Java对象,而且容器为它提供十八般武器也是Java对象。
二、Servlet常用武器:
请求对象:从该对象中获取来自客户端的请求信息
响应对象:Servlet通过该对象生成响应结果
Servlet配置对象:当容器初始化一个Servlet对象时,会向Servlet提供一个ServletConfig对象,Servlet通过该对象来获取初始化参数信息以及ServletContext对象。
Servlet上下文对象:Servlet通过该对象来访问容器为当前web应用提供各种资源。
三、Servlet API:
Serlvet接口:
init(): 容器创建好Servlet对象后,就会调用该方法
service():负责响应客户请求,容器接收到客户端要求访问特定Servlet对象的请求时,就会调用该Servlet对象的service方法。
destroy():负责释放Servlet对象占用的资源。
getServletConfig():
getServletInfo():
GenericServlet抽象类:
此抽象类为servlet接口提供通用实现,与任何网络应用层协议无关。GenericServlet除了实现Servlet接口,还实现了ServletConfig接口和Serializable接口
HttpServlet抽象类:
此类为GenericServlet类的子类。为Servlet接口提供了与Http协议相关的通用实现。即:HttpServlet对象适合运行在与客户端采用Http协议通信的Servlet容器或者Web服务器中。
ServletRequest接口:
表示来自客户端请求。当Servlet容器接收到客户端要求访问的特定Servlet的请求时,容器先解析客户端原始请求数据,把它包装成一个ServletRequest对象。当容器调用Servlet对象的Service()方法时,就会把ServletRequest对象作为参数传给service()方法。
HttpServletRequest接口:
HttpServletRequest接口是ServeltRequst接口的子接口,HttpServlet类的重载service()方法以及doGet()和doPost()方法
ServletResponse接口:
ServletResponse中响应的正文默认mime类型为text/plain,即纯文本类型;而HttpServletResponse中响应的正文默认mime类型为text/html,即文档类型
HttpServletResponse接口:
ServletConfig接口:
Servlet容器调用Servlet对象的init(ServletConfig config)方法时,会把ServletConfig对象作为参数传递给Servlet对象,Init(ServletConfig config)方法会使得当前Servlet对象与ServletConfig对象之间建立关联关系。
ServletContext接口:
ServletContext是Servlet与servlet容器之间进行通信的接口,Servlet容器在启动一个web应用时,会为它创建一个ServletContext对象。
四、Java Web应用生命周期(由Servlet容器控制)
启动阶段 :加载Web应用的有关数据(eg:web.xml--->内存),创建ServletContext对象,对所有Filter和一些Servlet进行初始化。
运行时阶段 :为客户端提供服务,加载初始化Servlet,调用Service()方法。
终止阶段 :销毁Servlet、Filter、以及web应用相关对象,释放资源。
0条评论
点击登录参与评论