---恢复内容开始---
一、Servlet简介
1.介绍
运行在服务器端的小程序,sun公司提供的一套标准,用来处理客户端的请求、服务端的响应。由java语言编写。
Servlet规范(三个核心技术)
Servlet技术
filter技术
listener技术
2.Servlet 快速开始
实现步骤:
1.创建类实现Servlet接口
2.覆盖service方法
3.在web.xml中配置Servlet
WEB实际开发中不会直接实现Servlet接口,覆盖的方法太多,我们一般继承HttpServlet
实现步骤:
1.创建类继承HttpServlet
2.覆盖实现doGet和doPost方法
二、Servlet API
1.Servlet接口中的方法
1.init(ServletConfig config)
servlet对象创建时执行该方法,ServletConfig是该servlet对象的配置信息
2.service(ServletRequest request, ServletResponse response)
每次请求都会执行该方法,ServletRequest封装的时候符合http标准的请求信息,ServletResponse内部封装的是符合http标准的响应信息
3.destroy()
servlet销毁时执行该方法(服务器关闭)
2.HttpServlet类的方法
init()
doGet(HttpServletRequest request, HttpServletResponse response)
doPost(HttpServletRequest request, HttpServletResponse response)
destroy()
3.Servlet的生命周期
Servlet默认第一次访问创建servlet对象(可通过配置文件修改)
服务器关闭时销毁servlet对象
每次访问必然执行service()方法
三、Servlet 配置
1.基本配置
其中url-pattern的配置方式:
- 完全匹配,访问的资源与配置的字眼完全相同才能访问到
- 目录匹配:/虚拟的目录/* *代表任意资源
- 扩展名匹配: *.扩展名
2&3 不能混用
2.服务器启动实例化Servlet配置
Servlet默认第一次访问时被创建,当Servlet配置有<load-on-startup>时,servlet对象在服务器启动时就创建
3.缺省Servlet
可以将url-pattern配置一个/,代表该servlet是缺省的servlet
当你访问资源地址所有的servlet都不匹配时,缺省的servlet负责处理
web应用中所有的资源的响应都是servlet负责的,包括静态资源
4.首页
在servlet配置中使用<welcome-file-list></welcome-file-list>配置web项目的首页,可以配置多个
四、ServletContext对象
1.什么事ServletContext对象(应用较多)
ServletContext是一个web应用的环境对象,该对象内部封装该web应用的信息,ServletContext对象一个web应用中只有一个(一个web应用中servlet对象可以有多个)
ServletContext对象的生命周期
创建:该web应用被加载(服务器启动)
销毁:web应用被卸载(服务器关闭)
2.获取ServletContext对象
1.ServletContext context = config.getServletContext();
2.ServletContext context = this.getServletContext(); ------------ 推荐使用
3.ServletContext的作用
1.获取web应用全局的初始化参数
获取web.xml中配置的全局参数
<context-param></context-param>
2.获得web应用中任何资源的绝对路径
String path = context.getRealPath("web应用相对路径");
3.ServletContext是一个域对象
ServletContext域对象的作用范围:整个web应用(所有的web资源都可以随意想ServletContext域中存取数据,数据可以共享)
域对象通用的方法:
setAttribute(String name, Object obj);
getAttribute(String name);
removeAttribute(String name);
---恢复内容结束---