jspInit () {}: يتم استدعاء هذه الطريقة عند تهيئة صفحة jsp، ويتم تنفيذ هذه الطريقة مرة واحدة فقط أثناء التهيئة، حتى تتمكن من إجراء بعض تكوينات معلمات التهيئة والأعمال الأخرى لمرة واحدة هنا، والتي أنشأها المؤلف
jspDestroy(){}: يتم استدعاء هذه الطريقة عند إغلاق صفحة jsp لسبب ما، تم إنشاؤها بواسطة المؤلف
jspService(){}: طريقة لمعالجة صفحة jsp التي تم إنشاؤها تلقائيًا بواسطة حاوية jsp، والتي تم إنشاؤها بواسطة حاوية jsp
على وجه الدقة، يجب أن يكون لـ jsp ثلاث طرق داخلية، وهي jspInit() و_jspService() وjspDestroy(). ومن بين هذه الطرق الثلاثة، يمكن للمؤلف تعريف jspInit() وjspDestroy()، بينما يتم تعريف _jspService() بواسطة. يتم تعريف الحاوية jsp بناءً على محتوى jsp Pge ولا يمكن للمؤلف تعريفها.
لنتحدث أولاً عن المبادئ الداخلية لصفحة الويب jsp. عند معالجة ملف jsp لأول مرة، سيتم تحويله إلى servlet. يقوم محرك jsp أولاً بتحويل ملف jsp إلى ملف جافا المصدر. في حالة حدوث خطأ أثناء عملية التحويل، سيتوقف على الفور ويرسل تقرير رسالة خطأ إلى الخادم والعميل إذا نجح التحويل، فسيتم إنشاء فئة . ثم قم بإنشاء كائن Servlet وقم أولاً بتنفيذ طريقة jspInit () للتهيئة نظرًا لأن طريقة jspInit () يتم تنفيذها مرة واحدة فقط أثناء عملية التنفيذ بأكملها، فيمكنك إجراء بعض العمليات الضرورية في هذه الطريقة مثل الاتصال بقاعدة البيانات وتهيئة بعض العمليات. المعلمات، وما إلى ذلك، ثم قم بتنفيذ طريقة _jspService () لمعالجة طلب العميل، وسيتم إنشاء سلسلة رسائل لكل طلب في الذاكرة لفترة طويلة، يكون التنفيذ سريعًا، ولكن نظرًا لأن التهيئة تتطلب التجميع، فإن التنفيذ الأول لا يزال بطيئًا نسبيًا. إذا تم إغلاق صفحة ويب 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(){
System.out. print("start");
}
%>
<%!
public void jspDestroy(){
System.out.print("end"
}
%>
</body>
</html>
قم بتنفيذ ملف jsp هذا ثم أغلقه. تحقق من سجل اليوم ضمن Tomcat/logs وستجد أن المحتوى هو "البداية والنهاية". يتم تسجيل المحتوى "البدء" في السجل، واستدعاء طريقة jspDestroy() عند إغلاق ملف jsp، وتسجيل المحتوى "النهاية" في السجل.