JSP LIFE CYCLE
1. JSP life cycle
Với
request đầu tiên sau khi được deploy, JSP phải trải qua 2 step là translation
và compilation- Translation: translate jsp sang servlet. JSP syntax được kiểm
tra tại step này- Compilation: container compile servlet sang bytecode (.class
file). Java language/syntax được kiểm tra tại step này.
Sau
đây là các giai đoạn trong vòng đời của của một JSP:JSP translate thành
Servlet bao gồm 3 methods sau:
- jspInit(): được gọi bởi init() method (từ HttpServlet), method này có thể được override
- jspDestroy(): được gọi bởi destroy() method, method này cũng có thể được override
- _jspService(): được gọi bởi service() method, method này không nên override
Chú
ý: Những method bắt đầu bằng underscore (_) có nghĩa không nên override
Giai
đoạn chủ yếu trong vòng đời của JSP là tương tự như vòng đời của Servlet và
chúng như sau:
Khi
môt trình duyệt yêu cầu một JSP, đầu tiên JSP engine kiểm tra để biết có hay
không nó cần biên dịch trang này. Nếu trang chưa được biên dịch, hoặc nếu JSP
đã được sửa đổi từ lần sửa đổi cuối cùng, thì JSP engine biên dịch trang này.
Tiến
trình biên dịch gồm 3 bước:
- Parse một JSP
- Biên dịch JSP thành một Servlet
- Biên dịch Servlet đó.
Phương thức jspInit(): Khi một container tải một JSP, nó gọi phương thức
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 sự khởi
tạo JSP riêng, ghi đè:
public void jspInit(){
// Initialization code...
}
// Initialization code...
}
Phương thức _jspService() Nét đặc trưng là, việc khởi tạo được thực hiện chỉ một
lần và với phương thức int của Servlet, nói chung bạn khởi tạo các kết nối
Database, mở các file, và tạo các bảng tra cứu trong phương thức jspInit.
Giai
đoạn này trong vòng đời JSP biểu diễn tất cả các tương tác với Request tới khi
JSP đó bị hủy.
Bất
cứ khi nào một trình duyệt yêu cầu một JSP và trang đã được tải và được khởi
tạo, thì JSP engine triệu hồi phương thức _jspService() trong JSP đó.
void _jspService(HttpServletRequest request,
HttpServletResponse response)
{
// Service handling code... }
HttpServletResponse response)
{
// Service handling code... }
Phương
thức _jspService() nhận một HttpServletRequest và
một HttpServletResponse như là các tham số của nó.
Phương
thức _jspService() của một JSP được triệu hồi một lần cho mỗi yêu cầu và
nó chịu trách nhiệm tạo Response cho Request đó và phương thức này cũng chịu
trách nhiệm tạo các phản hồi tới tất cả 7 phương thức của HTTP, ví dụ: GET,
POST, DELETE, …
Giai
đoạn hủy một JSP trong vòng đời JSP biểu thị khi nào thì một JSP bị gỡ bỏ khỏi
một container.
Phương
thức jspDestroy() trong JSP là phương thức hủy tương đương với trong
Servlet. Ghi đè phương thức jspDestroy khi bạn cần thực hiện bất kỳ quá trình
hủy nào, ví dụ như giải phóng kết nối với Database, hoặc đóng các file.
Phương thức jspDestroy()
public void jspDestroy()
{
// Your cleanup code goes here.
}
{
// Your cleanup code goes here.
}
Khai báo phương thức thực hiện
nhiệm vụ
- Đọc tham số cấu hình
- Giải phóng tài nguyên
- Thực hiện bất kỳ công việc dọn dẹp nào bằng cách override phương thức jspDestroy() của giao diện jspPage
Giai đoạn hủy một JSP trong vòng đời JSP biểu thị khi nào
thì một JSP bị gỡ bỏ khỏi một container.
Phương thức jspDestroy() trong
JSP là phương thức hủy tương đương với trong Servlet. Ghi đè phương thức jspDestroy khi bạn cần thực hiện bất kỳ quá trình hủy nào, ví dụ như giải
phóng kết nối với Database, hoặc đóng các file.
Phương
thức jspDestroy() có form sau:
2. Tổng hợp
- JSPs Làm việc cùng với các servlet để xử lý yêu cầu của khách hàng và đáp ứng chúng. Các yêu cầu và đáp ứng của khách hàng là các yêu cầu và đáp ứng của HTTP .
- Sử dụng JSP thuận tiện do nền tảng độc lập và tính di động của Java
- Khi chạy, JSP được chuyển đổi thành các servlet và thực thi.
- JSP có một kho lưu trữ của thẻ để thực hiện các chức năng khác nhau được gọi là JSTL
- EL được sử dụng để đánh giá biểu thức JSP như vậy mà chúng tương thích với JSFs.
- Ưu điểm của JSP :
- JSP có thể chạy trên nhiều hệ điều hành khác nhau
- Có tất cả lợi thế của java và khiến trang HTML tĩnh trở nên năng động hơn
- Thiết kế giao diện web trở nên dễ dàng
- JSP luôn biên dịch trước khi nó được xử lý bởi các máy chủ
- Nhược điểm của JSP :
- Khó kiểm tra lỗi vì vừa phải đóng vai trò như view lẫn controller
Comments
Post a Comment