jspInit(){}:jsp Page被初始化的時候調用該方法,并且該方法僅再初始化時執行一次,所以客以在這里進行一些初始化的參數配置等一次性工作,由作者創建
jspDestroy(){}:jsp Page由于某種原因被關閉的時候調用該方法,有作者創建
jspService(){}:由jsp容器自動創建的處理jsp Page的方法,由jsp容器創建
準確的說,jsp應該由三個內部方法,也就是jspInit(),_jspService(),jspDestroy(),這三個方法中jspInit()和jspDestroy()可以由作者定義,而_jspService()由jsp容器根據jsp Pge的內容進行定義,不能由作者定義。
先說一下jsp網頁的內部原理,當jsp文件第一次被處理時,他會被轉化成一個servlet。jsp引擎首先把jsp文件轉化成一個java源文件,如果在轉化過程中發生錯誤的話,會立刻中止,同時向服務器端和客戶端發送錯誤信息報告;如果轉化成功了,就會產生一個class類。然后再創建一個Servlet對象,首先執行jspInit()方法進行初始化操作,由于整個執行過程jspInit()方法只執行一次,所以可以在這個方法中進行一些必要的操作比如連接數據庫,初始化部分參數等等,接著執行_jspService()方法,對客戶端的請求進行處理,對每一個請求會創建一個線程,如果同時有多個請求需要處理的話就會創建多個線程,由于servlet長期貯存與內存中,所以執行速度快,但是由于初始化需要編譯,所以第一次執行還是比較慢的,如果由于某種原因導致jsp網頁關閉或者銷毀的話會執行jspDestroy()方法。
<%@ page language="java" contentType="text/html; charset=gbk"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<title>測試</title>
</head>
<body>
<%!
public void jspInit(){
新聞熱點
疑難解答