一.概念
Servlet是运行在Web服务器中的小型Java程序(即服务器端的小应用程序),定义JAVA类被浏览器访问(Tomcat识别)的规则,通常通过HTTP(超文本传输协议)接收和响应来自Web客户端的请求。我们需要定义一个类,实现Servlet接口,重写接口中的方法。
Servlet --> GenericServlet --> HttpServlet (继承HttpServlet)
二..步骤
1 创建一个javaEE项目
2 定义一个类实现Servlet接口
3 实现接口中的抽象方法
4 配置servlet,在web.xml配置
三.执行原理
1 当服务器接收到客户端浏览器的请求后,会解析url地址 ,从而获得url路径,获取访问Servlet资源路径
2 查找web.xml文件,是否有对应的<url-pattern></url-pattern>标签内容
3 如果有,则找对应的<servlet-class>全类名
4 tomcat 会将这个类加载进内存,创建其对象
5 调用其方法
四.生命周期★★★★★
创建:第一次访问某个servlet的时候,首先调用其构造函数。对象只被创建一次,以后都从缓存池中获取。
@Override
public StudentServlet(){ System.out.println("servlet被创建了"); }
初始化:第一次访问 在构造函数之后 调用其 init初始化方法 : 功能 配置一些初始化参数
@Override public void init() throws ServletException { System.out.println("初始化方法"); }
服务:每次访问都会调用service方法
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("业务方法");
}
销毁:当程序关闭的时候 调用销毁的方法
@Override
public void destroy() {
super.destroy();
System.out.println("销毁");
}
五.Servlet3.0注解配置
支持注解配置 可以不需要web.xml
六.Servlet体系结构
1. Servlet----接口
2.GenericServlet抽象类------->重写service方法
3.HttpServlet抽象类------->对HTTP进行了封装 简化操作 doGet() doPost()★★★最常用
七. Servlet相关配置
url-partten:servlet访问的路径
1. 一个servlet可以定义多个访问路径 如:@WebServlet({“/do”,“/demo”,“/de”})
2. 路径的规则
①/xxxx 完全的路径匹配
② /xxx/xxx 多层匹配
③*.xxx 拓展名匹配