Servlet
Servlet基本流程
- 客户端(一般为web浏览器)通过HTTP提出请求
- Web服务器接受该请求并将其转发给Servlet
- Servlet接受请求并执行某种处理
- Servlet向Web服务器返回应答
- Web服务器将从Servlet收的应答发送给客户端
Servlet的生命周期
- 从创建到销毁,所调用的方法。
- Servlet容器创建Servlet的一个实例
- 容器调用该实例的init()方法
- 如容器有对该Servlet有请求,则调用此实例的service()方法
- 容器再销毁本实例前调用destroy()方法
- 销毁并标记该实例以供作为垃圾收集
init方法
- Servlet 通过调用 init () 方法进行初始化。
- 在创建该servlet的实例时,就执行该方法。
- 一个servlet只会初始化一次, init方法只会执行一次
- 默认情况下是 : 初次访问该servlet,才会创建实例。
service方法
- Servlet 调用 service() 方法来处理客户端的请求
- 只要客户端来了一个请求,那么就执行这个方法了。
- 该方法可以被执行很多次。 一次请求,对应一次service方法的调用
destroy方法
- Servlet 通过调用 destroy() 方法结束
- servlet销毁的时候,就会执行该方法
该项目从tomcat的里面移除
最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。
第一个Servlet
在eclipse下新建一个Dynamic Web Project 项目,项目名HelloServlet,Dynamic Web module version选择2.5,这个版本会自动创建web.xml配置文件。
引入Tomcat包
或如图:
导入lib包后:
在WebContent文件下建一个HTML文件,如:
index.html内容为:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Helllo</title>
</head>
<body>
<p>Helllo Servlet!!!</p>
</body>
</html>
在WEB-INF下的web.xml文件下加入:
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
配置server
运行:
Servlet配置web.xml文件
<servlet>标签
| <servlet-name>属性为Servlet的名称,可为任意合法标识符
| <servlet-class>属性为Servlet对应的类的完整路径
<servlet-mapping>标签
| <servlet-name>属性的值必须完全一致
| <url-pattern>为调用该Servlet的路径