概念:
Servlet(Server Applet),全称Java Servlet。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类。
简单说Servlet就是一个接口,定义了Java类被浏览器访问到的规则。
简单入门:
1.创建一个类,实现Servlet接口
public class 类名 implements Servlet
2.实现接口中的抽象方法
3.配置Servlet
- 在web.xml中配置
</servlet-mapping>
<servlet>
<servlet-name>创建的类名/其它的也行</servlet-name>
<servlet-class>创建的全类名(全部的包名加类名)</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>跟上面的servlet-name要保持一致</servlet-name>
<url-pattern>/虚拟目录/浏览器搜索的名字</url-pattern>
</servlet-mapping>
执行原理:
- 当服务器接收到客户端浏览器的请求后,会解析请求URL路径,获取访问的Servlet的资源路径
- 查找web.xml文件,是否有对应的url-pattern标签体内容
- 如果有,则再找到对应的servlet-class全类名
- tomcat会将字节码文件加载进内存,并且创建其对象调用其方法
生命周期:
注解配置
- 支持注解配置,可以不需要web.xml了
步骤 - 创建JavaEE项目,选择Servlet的版本3.0以上,可以不创建web.xml
- 定义一个类,实行Servlet接口,复写方法
- 在类上使用@webServlet注解,进行配置
@webServlet(“资源路径”)
体系结构
Servlet ---- 接口
↓
GenericServlet ---- 抽象类
↓
HttpServlet ---- 抽象类
- GenericServlet:将Servlet接口中其它的方法做了默认空实现,只将service方法作为抽象
- HttpServlet:对http协议的一种封装,简化操作