JSP লাইফসাইকেল বলতে এর সৃষ্টি থেকে ধ্বংস পর্যন্ত की প্রক্রিয়া বোঝায়। এটি সার্ভলেট লাইফসাইকেলের অনুরূপ, শুধু একটি অতিরিক্ত ধাপ আছে যা JSP কে সার্ভলেটে কম্পাইল করার জন্য প্রয়োজন।
JSP অনুসরণ করার পথসমূহ
JSP التى অনুসরণ করে:
- কম্পাইলেশন (Compilation)
- ইনিশিয়ালাইজেশন (Initialization)
- এক্সিকিউশন (Execution)
- ক্লিনআপ (Cleanup)
JSP লাইফসাইকেলের চারটি প্রধান ফেজ সার্ভলেট লাইফসাইকেলের সাথে খুব মিলিত। নিচে চারটি ফেজ বর্ণনা করা হলো:

JSP কম্পাইলেশন
যখন ব্রাউজার একটি JSP রিকোয়েস্ট করে, JSP ইঞ্জিন প্রথমে চেক করে পেজটি কম্পাইল করতে হবে কিনা। যদি পেজটি কখনো কম্পাইল না হয়ে থাকে, বা শেষ কম্পাইলেশনের পর থেকে মডিফাইড হয়ে থাকে, তবে JSP ইঞ্জিন পেজটি কম্পাইল করে।
কম্পাইলেশন প্রক্রিয়া তিন ধাপে সম্পন্ন হয়:
- JSP পার্স করা।
- JSP কে সার্ভলেটে রূপান্তর করা।
- সার্ভলেট কম্পাইল করা।
JSP ইনিশিয়ালাইজেশন
যখন কন্টেইনার একটি JSP লোড করে, এটি যেকোনো রিকোয়েস্ট সার্ভিস করার আগে jspInit() মেথডটি আহ্বান করে। JSP-নির্দিষ্ট ইনিশিয়ালাইজেশন করতে হলে jspInit() মেথড ওভাররাইড করুন:
public void jspInit() {
// ইনিশিয়ালাইজেশন কোড...
}
সাধারণত ইনিশিয়ালাইজেশন শুধু একবার হয়। সার্ভলেটের init মেথডের মতোই, সাধারণত ডেটাবেস কানেকশন, ফাইল ওপেন, লুকআপ টেবিল তৈরি ইত্যাদি jspInit মেথডে করা হয়।
JSP এক্সিকিউশন
JSP লাইফসাইকেলের এই ফেজটি JSP ধ্বংস হওয়া পর্যন্ত রিকোয়েস্টের সাথে সব ইন্টারঅ্যাকশন প্রতিনিধিত্ব করে।
যখন ব্রাউজার একটি JSP রিকোয়েস্ট করে এবং পেজটি লোড ও ইনিশিয়ালাইজড হয়ে যায়, JSP ইঞ্জিন JSP-এ _jspService() মেথডটি আহ্বান করে।
_jspService() মেথড দুটি প্যারামিটার নেয়: HttpServletRequest এবং HttpServletResponse:
void _jspService(HttpServletRequest request, HttpServletResponse response) {
// সার্ভিস হ্যান্ডলিং কোড...
}
JSP-এর _jspService() মেথড প্রতিটি রিকোয়েস্টের ভিত্তিতে আহ্বান করা হয়। এটি ঐ রিকোয়েস্টের জন্য রেসপন্স জেনারেট করার দায়িত্বে থাকে এবং HTTP-এর সাতটি মেথড (GET, POST, DELETE ইত্যাদি) সবাই হ্যান্ডেল করে।
JSP ক্লিনআপ
JSP লাইফসাইকেলের ধ্বংস ফেজটি বলতে কন্টেইনার দ্বারা JSP কে ব্যবহার থেকে বাদ দেওয়া বোঝায়।
jspDestroy() মেথডটি সার্ভলেটের destroy মেথডের সমতুল্য। ক্লিনআপ করার জন্য (যেমন ডেটাবেস কানেকশন রিলিজ বা খোলা ফাইল বন্ধ করা) jspDestroy ওভাররাইড করুন:
public void jspDestroy() {
// আপনার ক্লিনআপ কোড এখানে...
}