Thông tin tài liệu:
Bài giảng Lập trình ứng dụng mạng: Bài 6 Servlet nhằm trình bày về khái quát Servlet, luồng xử lý Servlet, các thư mục Web trong Tomcat server, chu trình sống của một Servlet, sáu bước để xây dựng và chạy một servlet...cùng tìm hiểu bài giảng để hiểu sâu hơn về Servlet.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình ứng dụng mạng: Bài 6 - GV. Võ Tấn Dũng
TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN TP.HCM
LẬP TRÌNH ỨNG DỤNG MẠNG
BÀI 6
SERVLET
GV: Võ Tấn Dũng
GIẢNG VIÊN:
VÕ TẤN DŨNG
1
PHẦN 1
TỔNG QUAN
SERVLET
GV: Võ Tấn Dũng
2
TỔNG QUAN SERVLET
Các vấn đề được trình bày trong phần này:
– Giới thiệu Servlet (Servlet là gì?).
– Luồng xử lý Servlet.
– Các thư mục Web trong Tomcat server.
– Chu trình sống của một Servlet.
– Sáu bước để xây dựng và chạy một servlet.
GV: Võ Tấn Dũng
3
GIỚI THIỆU SERVLET
• Servlet là một lớp Java được nạp tự động và chạy trên
những web server có hỗ trợ Java. Những server như thế
được gọi là Servlet Container (hay Java Server).
• Servlet tương tác với web client theo mô hình request-
response dựa theo giao thức HTTP. Một số Servlet
Container cũng hỗ trợ cả giao thức HTTPS (HTTP over
SSL) dành cho các giao tác có tính bảo mật.
• Kiến trúc hoạt động:
GV: Võ Tấn Dũng
4
LUỒNG XỬ LÝ SERVLET
Luồng xử lý một servlet diễn ra qua các bước như sau:
• Client yêu cầu một servlet, tên của servlet là một phần
của URL
(vd: http://www.music.com/music/SearchServlet).
2. Web server nhận yêu cầu (request) và gửi nó tới
servlet engine, là nơi mà quản lý và tạo ra các thể hiện
của servlet.
3. Servlet engine sẽ gọi phương thức service (hoặc
doPost, doGet) của servlet để xử lý yêu cầu.
4. Servlet sẽ tiếp nhận yêu cầu cùng với các tham số, tài
nguyên khác, sau đó xử lý và tạo ra một kết quả trả lời
tương ứng (response) và chuyển kết quả cho Web
server.
5. Web server sẽ gửi trả kết quả này (response) cho
client (Web Browser).
GV: Võ Tấn Dũng
5
GIỚI THIỆU SERVLET
Để chạy được một servlet cần phải có:
• Cần có package servlet.jar để biên dịch
(http://java.sun.com/products/servlet/)
Java 2 không chứa các lớp của gói servlet, trong trường
hơp này chúng ta phải chỉ biến môi trường CLASSPATH
đến tập tin servlet.jar, hoặc servlet-api.jar. Các tập tin này
có kèm theo trong các Web Server có hỗ trợ Java.
• Các Web Server hỗ trợ Servlet, hiện nay đã có:
– Apache Tomcat (http://jakarta.apache.org)
– Sun’s Java Web Server, free, hiện không cho download
(http://wwws.sun.com/software/jwebserver/)
– New Atlanta’s ServletExec, tích hợp ServletEngine vào
các web server(http://newatlanta.com)
– http://www.macromedia.com/software/jrun/trial/
–…
(Tham khảo các tài liệu về Servlet:
GV: Võ Tấn Dũng
http://java.sun.com/products/servlet/docs.html) 6
Ví dụ servlet đơn giản: “Hello” Servlet
//HelloWorldServlet.java
import javax.servlet.*;
import java.io.*;
public class helloWorldServlet extends GenericServlet{
public void service(ServletRequest request, ServletResponse
response) throws IOException
{
response.setContentType(“text/html”);
PrintWriter out=response.getWriter();
out.println(“”);
out.println(“”);
out.println(“Hello World Servlet!”);
out.println(“”);
out.println(“”);
}
GV: Võ Tấn Dũng
} 7
CÁC THƯ MỤC WEB TRONG TOMCAT
• Đối với Tomcat Web Server, mỗi ứng dụng web được lưu
trữ trong thư mục riêng, chứa trong thư mục webapps (của
thư mục Tomcat khi cài đặt lên đĩa). Mỗi ứng dụng này cần
có tập tin web.xml để mô tả những yếu tố riêng, được đặt
trong thư mục WEB-INF của ứng dụng.
• Ví dụ ta xây dựng một ứng dụng Web bằng cách tạo thư
mục myApp tương ứng trong thư mục webapps. Tên thư
mục này sẽ xuất hiện trong URL khi ta gọi servlet.
• Tạo một thư mục WEB-INF trong thư mục myApp, và tạo
một thư mục tên classes trong WEB-INF. Cấu trúc cây thư
mục này được trình bày ở slide ngay sau đây. Nếu ta có
các file HTML thì hãy đặt chúng trực tiếp vào thư mục
myApp. Ta cũng nên tạo một thư mục tên là images trong
myApp để chưa các file hình cho web của mình.
GV: Võ Tấn Dũng
8
CÁC THƯ MỤC WEB TRONG TOMCAT
GV: Võ Tấn Dũng
9
Chu trình sống của Servlet
• Chu trình sống của một Servlet bắt đầu khi nó được hệ
thống triệu gọi (gọi nạp vào bộ nhớ) cho đến khi nó bị
loại khỏi trình chủ Web server. Trải qua các giai đoạn
sau:
Nạp servlet.
Khởi tạo servlet.
Thực thi servlet.
Dọn dẹp servlet.
GV: Võ Tấn Dũng
10
Chu trình sống của Servlet
Giai đoạn Nạp servlet:
• Một servlet có thể được nạp vào bộ nhớ ở ba thời
điểm: khi server khởi động, khi người quản trị yêu
cầu, khi servlet được triệu gọi từ máy client.
• Yêu cầu Server nạp servlet trước sẽ khiến trình
khách có thể gọi servlet ngay mà không phải mất
công chờ.
• Để nạp servlet thì trình chủ phải biết tên lớp của
servlet. Tên của một servlet có thể trùng với tên lớp
của servlet hoặc tên mà ta đăng ký với trình chủ
trong quá trình đăng ký và ánh xạ.
...