Các thành phần của J2EE

Một phần của tài liệu Báo cáo thực tập tốt nghiêp Xây dựng hệ thống quản lý tội phạm trên nền Web (Trang 35)

Ứng dụng J2EE được tạo thành từ các thành phần. Một thành phần J2EE là một đơn vị chức năng phần mềm khép kín được lắp ghép vào một ứng dụng J2EE, nó có liên quan đến các lớp, các tập tin và nó giao tiếp với các thành phần khác. Các J2EE đặc tả định nghĩa các thành phần J2EE sau đây:

 Ứng dụng khách hàng và các applet là những thành phần chạy trên máy khách.

 Thành phần công nghệ Java Servlet và JavaServer Pages (JSP ) là các thành phần web chạy trên máy chủ.

 Enterprise JavaBeans (EJB) là thành phần nghiệp vụ kinh doanh chạy trên máy chủ. J2EE được viết bằng ngôn ngữ lập trình Java và được biên dịch trong cùng một cách như bất kỳ chương trình cùng ngôn ngữ. Sự khác biệt giữa J2EE và các lớp Java “tiêu chuẩn” là các thành phần J2EE lắp ráp thành một ứng dụng J2EE, được xác minh và tuân thủ với các đặc tả J2EE, và được triển khai tại nơi mà chúng chạy và được quản lý bởi máy chủ J2EE.

Browser Client Web Server Servlet Database Servlet Request <HTTP> Response 2.2.4.13. Tổng quan về JSP/ServLet • Servlet

Servlet là đoạn chương trình java thực thi trên Web Server hỗ trợ người lập trình Java xây dựng trang web động mà không cần học ngôn ngữ lập trình web mới Servlets nhận request – yêu cầu từ client, sao đó thực hiện các yêu cầu xử lý để gửi response – phản hồi đến người dùng sử dụng HTTP. Servlet được load sẵn ở Web Server duy nhất lần đầu tiên khi ứng dụng được deploy và đáp ứng tức thời yêu cầu của người dùng thông qua Web Container. Servlet được server hỗ trợ cơ chế multithread giúp giảm tài nguyên và quá tải trong việc xử lý của server hay container.

Cơ chế hoạt động

o Khi có request từ client gửi đến Server hay Web Container

o Container sẽ lựa chọn một instance Servlet tương ứng để đáp ứng request đó (người dùng sẽ không bao giờ biết instance nào được lựa chọn, nó lựa chọn khi nào, servlet xử lý khi nào)

o Servlet lựa chọn sẽ thực hiện xử lý và kết nối Database nếu cần.

o Sau khi servlet thực hiện xong, sẽ gửi kết quả ra container để gửi response về cho người dùng.

o Browser đón nhận kết quả và trình bày ra màn hình dữ liệu.

Chu kì tồn tại của servlet trong server hay container

o Khi một ứng dụng chưa được deploy vào trong server thì servlet chưa được khởi tạo o Khi ứng dụng được deloy vào server thì container sẽ thực hiện khởi tạo instance cho

servlet, trong lúc khởi tạo kích hoạt hà init

o Khi có một request đến servlet của người dùng, container đón nhận request và chọn instance bean bất kỳ tương ứng với yêu cầu để đáp ứng.

o Sau khi chọn được bean, container sẽ kích hoạt hàm service tương ứng

Khi servlet được cập nhật mới hay server bị crash hay undeloy ứng dụng ra khỏi server- container, thì hàm destroy của servlet được kích hoạt.

Mô hình Servlet Request và Response

Request là thông tin được gửi từ client tới 1 server. Respone là thông tin được gửi đến client tới 1 server. Nhiệm vụ của Servlet:

 Nhận client request (hầu hết ở dạng http request)

 Trích xuất một số thông tin từ request.

 Xử lý nghiệp vụ (truy cập database, gọi EJBs..)

 Tạo và gửi trả response cho client (hầu hết ở dạng HTTP response) hoặc forward request cho servlet khác cho JSP.

Hình 6: Mô hình Servlet Request và Response

• JSP(Java Server Pages)

JSP viết tắt của Java Server Pages

- Đây là ngôn ngữ scripting được dùng ở server để hỗ trợ ứng dụng trong việc trình bày trang web động – cập nhật dữ liệu

- JSP tích hợp bao gồm HTML, XML, Java Code, và kể cả Servlet

- Nó tạo thuận lợi cho người dùng trong việc xây dựng giao diện – khắc phục nhược điểm của servlet về giao diện.

- Ngoài ra, nó cho người dùng mở rộng khả năng sử dụng JSP qua việc định nghĩa các tag mới như XML – khắc phục nhược điểm của HTML (adsbygoogle = window.adsbygoogle || []).push({});

- Đặc biệt cho phép người dùng sử dụng nhúng trực tiếp code Java vào trong JSP thông qua Declaration – khai báo biến và hàm Scriptlets – chứa code trực tiếp của Java và Expression – tính toán biểu thức và in kết quả ra màn hình.

- Bản chất của JSP là Servlet, do vậy các thành phần của Servlet sẽ có tồn tại hết trên JSP

- Ngoài ra, JSP không cần phải biên dịch mà nó đƣợc biên dịch khi có request lần đầu tiên yêu cầu đến server.

- Để chạy được một trang JSP thì tất cả các code của JSP phải được biên dịch sang Servlet sau đó tùy vào nội dung mà Servlet sẽ cho ra trang HTML với nội dung có được từ xử lý của các đoạn code JSP để trả lời yêu cầu của client.

Client Web Server JSP ENGINEE Database JSP File HTTPT Chu kỳ sống của JSP Hình 7 : Sự sống của JSP

 Khi có một yêu cầu từ client đến server, container xác định trang jsp được yêu cầu

 Trang JSP được đưa qua JSP Engine để xử lý. JSP Engine thực hiện các bước sau o Đọc cấu trúc file của JSP File từ trên xuống dưới, từ trái qua phải để

chuyên đổi (Parsing) sang Java code tương ứng

o Phát sinh Servlet từ nội dung parsing ở bước trên để cấu tạo thành servlet o Thực hiện biên dịch code Servlet

o Sau khi biên dịch thành công thì quá trình hoạt động sẽ thực hiện đúng theo chu kỳ sống của Servlet như đã nêu trong các phần trên.

Một phần của tài liệu Báo cáo thực tập tốt nghiêp Xây dựng hệ thống quản lý tội phạm trên nền Web (Trang 35)