JSP - Vòng đời
Trong chương này, chúng ta sẽ thảo luận về vòng đời của JSP. Chìa khóa để hiểu chức năng cấp thấp của JSP là hiểu vòng đời đơn giản mà chúng tuân theo.
Vòng đời của JSP được định nghĩa là quá trình từ khi tạo ra nó cho đến khi bị phá hủy. Điều này tương tự như một vòng đời của servlet với một bước bổ sung được yêu cầu để biên dịch JSP thành servlet.
Các con đường được theo dõi bởi JSP
Sau đây là các đường dẫn được theo sau bởi một JSP:
- Compilation
- Initialization
- Execution
- Cleanup
Bốn giai đoạn chính của vòng đời JSP rất giống với Vòng đời của Servlet. Bốn giai đoạn đã được mô tả dưới đây:
Tổng hợp JSP
Khi trình duyệt yêu cầu JSP, đầu tiên JSP engine sẽ kiểm tra xem nó có cần biên dịch trang hay không. Nếu trang chưa bao giờ được biên dịch hoặc nếu JSP đã được sửa đổi kể từ lần biên dịch cuối cùng, thì công cụ JSP sẽ biên dịch trang.
Quá trình biên dịch bao gồm ba bước:
- Phân tích cú pháp JSP.
- Biến JSP thành một servlet.
- Biên dịch servlet.
Khởi tạo JSP
Khi một vùng chứa tải một JSP, nó sẽ gọi jspInit()trước khi phục vụ bất kỳ yêu cầu nào. Nếu bạn cần thực hiện khởi tạo JSP cụ thể, hãy ghi đèjspInit() phương pháp -
public void jspInit(){
// Initialization code...
}
Thông thường, việc khởi tạo chỉ được thực hiện một lần và như với phương thức init của servlet, bạn thường khởi tạo các kết nối cơ sở dữ liệu, mở tệp và tạo bảng tra cứu trong phương thức jspInit.
Thực thi JSP
Giai đoạn này của vòng đời JSP đại diện cho tất cả các tương tác với các yêu cầu cho đến khi JSP bị hủy.
Bất cứ khi nào trình duyệt yêu cầu JSP và trang đã được tải và khởi tạo, công cụ JSP sẽ gọi _jspService() trong JSP.
Phương thức _jspService () nhận một HttpServletRequest và một HttpServletResponse như các thông số của nó như sau:
void _jspService(HttpServletRequest request, HttpServletResponse response) {
// Service handling code...
}
Các _jspService()phương thức của một JSP được gọi trên cơ sở yêu cầu. Phương thức này chịu trách nhiệm tạo phản hồi cho yêu cầu đó và phương thức này cũng chịu trách nhiệm tạo phản hồi cho tất cả bảy phương thức HTTP, tức làGET, POST, DELETE, Vân vân.
Dọn dẹp JSP
Giai đoạn phá hủy của vòng đời JSP biểu thị khi một JSP được vùng chứa loại bỏ khỏi việc sử dụng.
Các jspDestroy()phương thức là JSP tương đương với phương thức hủy cho các servlet. Ghi đè jspDestroy khi bạn cần thực hiện bất kỳ hoạt động dọn dẹp nào, chẳng hạn như giải phóng các kết nối cơ sở dữ liệu hoặc đóng các tệp đang mở.
Phương thức jspDestroy () có dạng sau:
public void jspDestroy() {
// Your cleanup code goes here.
}