Servlets - Tổng quan

Servlet là gì?

Java Servlet là các chương trình chạy trên máy chủ Web hoặc Ứng dụng và hoạt động như một lớp trung gian giữa các yêu cầu đến từ trình duyệt Web hoặc máy khách HTTP khác và cơ sở dữ liệu hoặc ứng dụng trên máy chủ HTTP.

Sử dụng Servlet, bạn có thể thu thập thông tin đầu vào từ người dùng thông qua biểu mẫu trang web, trình bày bản ghi từ cơ sở dữ liệu hoặc nguồn khác và tạo trang web động.

Java Servlet thường phục vụ mục đích tương tự như các chương trình được triển khai bằng Giao diện cổng chung (CGI). Nhưng Servlet cung cấp một số lợi thế so với CGI.

  • Hiệu suất tốt hơn đáng kể.

  • Servlet thực thi trong không gian địa chỉ của máy chủ Web. Không cần thiết phải tạo một quy trình riêng để xử lý từng yêu cầu của khách hàng.

  • Servlet độc lập với nền tảng vì chúng được viết bằng Java.

  • Trình quản lý bảo mật Java trên máy chủ thực thi một tập hợp các hạn chế để bảo vệ tài nguyên trên máy chủ. Vì vậy, các servlet được tin cậy.

  • Chức năng đầy đủ của các thư viện lớp Java có sẵn cho một servlet. Nó có thể giao tiếp với các applet, cơ sở dữ liệu hoặc phần mềm khác thông qua các ổ cắm và cơ chế RMI mà bạn đã thấy.

Kiến trúc Servlets

Sơ đồ sau đây cho thấy vị trí của Servlet trong một ứng dụng web.

Nhiệm vụ Servlets

Servlet thực hiện các tác vụ chính sau:

  • Đọc dữ liệu rõ ràng do khách hàng (trình duyệt) gửi. Điều này bao gồm một biểu mẫu HTML trên một trang Web hoặc nó cũng có thể đến từ một applet hoặc một chương trình khách HTTP tùy chỉnh.

  • Đọc dữ liệu yêu cầu HTTP ngầm do máy khách (trình duyệt) gửi. Điều này bao gồm cookie, loại phương tiện và lược đồ nén mà trình duyệt hiểu được, v.v.

  • Xử lý dữ liệu và tạo ra kết quả. Quá trình này có thể yêu cầu nói chuyện với cơ sở dữ liệu, thực hiện lệnh gọi RMI hoặc CORBA, gọi một dịch vụ Web hoặc tính toán phản hồi trực tiếp.

  • Gửi dữ liệu rõ ràng (tức là tài liệu) cho các máy khách (trình duyệt). Tài liệu này có thể được gửi bằng nhiều định dạng, bao gồm văn bản (HTML hoặc XML), nhị phân (ảnh GIF), Excel, v.v.

  • Gửi phản hồi HTTP ngầm đến các máy khách (trình duyệt). Điều này bao gồm việc thông báo cho các trình duyệt hoặc các ứng dụng khách khác biết loại tài liệu nào đang được trả về (ví dụ: HTML), đặt cookie và tham số bộ nhớ đệm, và các tác vụ khác như vậy.

Gói Servlets

Java Servlet là các lớp Java được chạy bởi một máy chủ web có trình thông dịch hỗ trợ đặc tả Java Servlet.

Servlet có thể được tạo bằng cách sử dụng javax.servletjavax.servlet.http gói, là một phần tiêu chuẩn của phiên bản doanh nghiệp của Java, một phiên bản mở rộng của thư viện lớp Java hỗ trợ các dự án phát triển quy mô lớn.

Các lớp này thực hiện các đặc tả Java Servlet và JSP. Tại thời điểm viết hướng dẫn này, các phiên bản là Java Servlet 2.5 và JSP 2.1.

Các servlet Java đã được tạo và biên dịch giống như bất kỳ lớp Java nào khác. Sau khi bạn cài đặt các gói servlet và thêm chúng vào Classpath của máy tính, bạn có thể biên dịch các servlet bằng trình biên dịch Java của JDK hoặc bất kỳ trình biên dịch hiện tại nào khác.

Tiếp theo là gì?

Tôi sẽ hướng dẫn bạn từng bước thiết lập môi trường của bạn để bắt đầu với Servlets. Vì vậy, hãy thắt chặt đai của bạn để có một chuyến lái xe tốt đẹp với Servlets. Tôi chắc rằng bạn sẽ rất thích hướng dẫn này.