文章目录
1.Servlet 技术
a) 什么是 Servlet?
- Servlet 是 JavaEE的规范之一,规范就是接口
- Servlet 是 JavaWeb三大组件之一。三大组件分别为:Servlet程序、Filter过滤器、Listener监听器。
- Servlet 是 运行在服务器上的一个Java小程序,
它可以接受客户端发来的请求,并相应数据给客户端。
b)如何手动实现Servlet程序
- 编写一个类去实现 Servlet 接口;
- 实现 service方法,处理请求,并响应数据;
- 在 web.xml 中去配置 servlet 程序的访问地址。
Service代码:
public class HelloServlet implements Servlet {
/*** service 方法是专门用来处理请求和响应的
* @param servletRequest
* @param servletResponse
* @throws ServletException
* @throws IOException */ @Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("Hello Servlet 被访问了");
}
}
xml配置
c)Servlet工作模式
- 客户端发送请求到服务器,
- 服务器启动并调用Servlet,Servlet根据客户端请求生成响应内容并将其传给服务器,
- 服务器将响应返回客户端。
Tomcat工作机制动画演示
用此动图帮助大家直观理解Servlet工作模式
d)url 地址 到 Servlet 程序访问
e) Servlet 的生命周期
- 执行Servlet构造器方法 ;
- 执行 init 初始化方法 ;
第一,二步,是在第一次访问的时候,创建Servlet程序会调用。 - 执行 Service 方法
第三步,每次访问都会使用 - 执行 destroy 销毁方法
第四步,在web 工程停止的时候调用
f) 通过继承 HttpServlet 实现 Servlet程序
一般在实际开发中,都是使用继承HttpServlet类的方式去实现 Servlet程序。
- 编写一个类去实现 HttpServlet 类 ;
- 根据业务需要重写 doGet 或 doPost 类 ;
- 到 web.xml 配置 service 程序的访问地址 。
Servlet代码:
web.xml中的配置 :
g) Servlet 类的继承体系
2.ServletConfig 类
ServletConfig类 从类名上来看,就知道是Servlet程序的配置信息类。
Servlet 程序 和 ServletConfig对象都是由 Tomcat负责创建,我们负责使用。
Servlet 程序默认是第一次访问是创建,ServletConfig是每个Servlet程序创建时,就创建一个对应的ServletConfig对象。
3.ServletContext类
a) 什么是ServletContext类?
- ServletConfig 是一个接口,它表示Servlet的上下文对象;
- 一个web 工程,只有一个ServletContext 对象实例;
- ServletContext 对象是一个域对象;
- ServletContext 是在 web工程上部署启动时创建,在web停止是销毁。
b) ServletContext 类的四个作用
- 获取 web.xml 中配置的上下文参数 context-param ;
- 获取当前的工程路径,格式:/工程路径 ;
- 获取工程部署在服务器硬盘上的绝对路径;
- 像 Map 一样存储数据 ;