- 编译阶段
servlet容器编译servlet源文件,生成servlet类
- 初始化阶段
加载与JSP对应的servlet类,创建其实例,并调用它的初始化方法
- 执行阶段
调用与JSP对应的servlet实例的服务方法
- 销毁阶段
调用与JSP对应的servlet实例的销毁方法,然后销毁servlet实例
jsp是一个特殊的servlet,两者之间的关系如下图
附实例:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%!private int initVar = 0;
private int serviceVar = 0;
private int destroyVar = 0;%>
<%!public void jspInit() {
initVar++;
System.out.println("jspInit():JSP被初始化了" + initVar + "次");
}
public void jspDestroy() {
destroyVar++;
System.out.println("jspDestroy():JSP被销毁了" + destroyVar + "次");
}
%>
<%
serviceVar++;
System.out.println("serviceVar():JSP共响应了" + serviceVar + "次请求");
String content1="初始化次数"+initVar;
String content2="响应客户端请求次数"+serviceVar;
String content3="销毁次数"+destroyVar;
%>
<h3>test</h3>
<p><%=content1 %></p>
<p><%=content2 %></p>
<p><%=content3 %></p>
</body>
</html>