Thứ Năm, 28 tháng 8, 2014

Java Web Technologies

Java Servlet : là một lớp java, được biên dịch thành file class và chạy vs file class đó vì thế nó được bảo mật hơn so vs jsp

JSP : cho phép tạo ra các trang web động nhờ có chứa html và java code, code jsp dễ bị người khác đọc vì nó nhúng chung với html nên kém bảo mật.

JSF : vì jsp và servlet không cung cấp thành phần giao diện người dùng  nên jsf được tạo ra để nhằm đáp ứng những yêu cầu của người dùng một cách tốt hơn.

Vòng đời Servlet

Servlet là các đối tượng java, mở rộng chức năng của 1 HTTP server, được quản lý bởi container tương ứng. Chạy được trên tất cả các web servers và  các app servers chuẩn.


Vòng đời Servlet có 5 bước :
  1. Tải servlet class vào bộ nhớ.
  2. Tạo đối tượng servlet.
  3. Gọi method servlet inti() .
  4. Gọi method servlet service().
  5. Gọi method servlet destroy().
- Bước 1,2,3 được thực thi một lần duy nhất khi servlet được nạp vào lần đầu tiên.
- Bước 4 được thực thi nhiều lần, mỗi khi có đòi hỏi từ phía người dùng tới servlet.
- Bước 5 được thực thi khi bộ chứa servlet (servlet container) trút bỏ (unloaded) servlet .

Giao thức HTTP

Hypertext Transfer Protocol (HTTP) là một giao thức nằm ở tầng ứng dụng, đảm nhiệm việc giao tiếp giữa các hệ thống phân tán với nhau, và nó là nền tảng của web.



HTTP cho phép giao tiếp giữa rất nhiều server/client với nhau, chủ yếu thông qua TCP/IP. Cổng giao tiếp chuẩn là 80, tuy nhiên có thể dùng bất kỳ cổng khác. Giao thức giữa client vs server dựa vào một cặp request/response. Client khởi tạo HTTP request và nhận HTTP response từ server gửi về.
HTTP request bao gồm 2 thành phần quan trọng là URL và Verb (phương thức), được gửi từ client. Ở phía ngược lại, server trả về HTTP response trong đó chứa Status code.
HTTP là giao thức phi trạng thái, các lệnh thực hiện độc lập vì các lệnh được thực thi một cách độc lập.

Mô hình Server-Client

Mô hình Client-Server là mô hình phổ biến trong mạng internet , có thể được phân thành 2 loại là: Client và Server.Trong đó, Client là một đối tượng cần phục vụ, thông thường là các ứng dụng hoặc các dịch vụ từ chương trình khác còn Server là đối tượng phục vụ những yêu cầu đó do client gửi tới.


Việc giao tiếp giữa các client và server được thực hiện dưới hình thức trao đổi các thông điệp (Message). Để được phục vụ, client sẽ gửi một thông điệp yêu cầu (Request Message) mô tả về công việc muốn server thực hiện. Khi nhận được thông điệp yêu cầu , server tiến hành phân tích để xác định công việc cần phải thực hiện. Nếu việc thực hiện yêu cầu có sinh ra kết quả trả về, server sẽ gửi nó cho client trong một thông điệp trả lời (Reply Message). Dạng thức và ý nghĩa của các thông điệp trao đổi giữa client và server được quy định rõ bởi giao thức của ứng dụng.
Việc ứng dụng mô hình Client-Server sẽ làm giảm chi phí, đồng thời làm tăng tốc độ, điều này rất cần thiết trong việc truy cập dữ liệu.