Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến

Servlet là một ứng dụng (class) Java chạy trên nền web server.

Cơ chế hoạt động theo mô hình CGI mở rộng.

Chương trình phải được dịch ra ở dạng byte-code(.class), khai báo với web server. Web server phải hỗ trợ Java.

Phải extends class HttpServlet. Không có method main.

 

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 1

Trang 1

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 2

Trang 2

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 3

Trang 3

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 4

Trang 4

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 5

Trang 5

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 6

Trang 6

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 7

Trang 7

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 8

Trang 8

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 9

Trang 9

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến trang 10

Trang 10

Tải về để xem bản đầy đủ

ppt 49 trang Danh Thịnh 09/01/2024 4180
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến

Bài giảng Phát triển web nâng cao - Chương VI: Lập trình web với các công nghệ phổ biến
CHƯƠNG 6: LẬP TRÌNH WEB VỚI CÁC CÔNG NGHỆ PHỔ BIẾN 
6.1 Giới thiệu Servlet /JSP 
6.2 Lập trình web với Servlet 
6.3 Lập trình web v ới JSP 
6.4 Giới thiệu ASP 
6.5 Lập trình web với ASP 
1 
Lập trình mạng – Chương 6 
6.1 Giới thiệu Servlet /JSP 
Servlet là một ứng dụng (class) Java chạy trên nền web server. 
Cơ chế hoạt động theo mô hình CGI mở rộng . 
Chương trình phải được dịch ra ở dạng byte- code(.class ), khai báo với web server. Web server phải hỗ trợ Java. 
Phải extends class HttpServlet . Không có method main. 
2 
Lập trình mạng – Chương 6 
6.1 Giới thiệu Servlet /JSP 
Cần có package servlet.jar để biên dịch (  ) 
Các server hiện hỗ trợ Servlet : 
Apache Tomcat (  ) 
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(  ) 
Tham khảo các tài liệu về Servlet : http:// java.sun.com/products/servlet/docs.html 
3 
Lập trình mạng – Chương 6 
6.1 Giới thiệu Servlet /JSP 
Cấu trúc đơn giản của một Servlet : 
import java.io .*; 
import java.servlet .*; 
import java.servlet.http .*; 
public class Sample extends HttpServlet { 
	public doGet(HttpServletRequest request, 
	 HttpServletResponse response) 
	throws ServletException,IOException { 
	 // dùng đối tượng “request” để đọc dữ liệu từ client 
	 // đối tượng “response” để xuất dữ liệu cho client 
	 PrintWriter out = response.getWriter (); 
	// dùng đối tượng out để ghi (method print) dữ liệu cho client 
	} 
} 
4 
Lập trình mạng – Chương 6 
6.1 Giới thiệu Servlet /JSP 
Biên dịch như một class Java. 
File *.class dịch được phải đặt vào đúng thư mục quy định sẵn của web server. 
Tomcat: $/ webpages /WEB-INF/classes 
JWS: $/ servlets 
Cấu hình cho web server đối với mỗi servlet : 
Tomcat: hiệu chỉnh file web.xml trong thư mục $/ webpages /WEB-INF theo DTD  
JWS: Cấu hình bằng web-based tool được cung cấp . 
5 
Lập trình mạng – Chương 6 
6.1 Giới thiệu Servlet /JSP 
Cơ chế hoạt động của một servlet : 
Web server nhận yêu cầu triệu gọi servlet từ client. 
Nếu servlet chạy lần đầu , web server load file servlet tương ứng , khởi tạo các thông số bằng qua method init() 
Nếu servlet đã được khởi tạo , tạo một thread để xử lý yêu cầu . 
Gọi methods doXxx () để xử lý các request tương ứng theo giao thức HTTP. 
doGet (..) cho HTTP GET, doPost cho HTTP POST 
6 
Lập trình mạng – Chương 6 
6.2 Lập trình web với Servlet 
Lấy dữ liệu từ web client gởi đến bằng servlet : 
Dùng đối tượng của class HttpServletRequest 
Các methods để lấy thông số : 
getParameter(“para -name”) 
getParameterValues(“para -name”) 
String username= request.getParameter(“username ”); 
String[] choice = request.getParameterValues(“comments ”); 
Dùng đối tượng của class HttpServletRequest để lấy các thông tin HTTP header 
7 
Lập trình mạng – Chương 6 
6.2 Lập trình web với Servlet 
Ví dụ lấy tất cả các thông số từ client 
Enumeration parameter_names = request.getParameterNames (); 
while(parameter_names.hasMoreElements ()){ 
	String para = parameter_names.nextElement (); 
	 out.print(para + “ = ”); 
	String[] paraValues = getParameterValues(para ); 
	 if(paraValues.lenght ()==1){ 
	 out.println(paraValues[0]); 
	}else{ 
	 for(int i = 0, i< paraValues.lenght(),i ++){ 
	 out.print(paraValues[i ]+ “-”); 
	 } 
	} 
} 
8 
Lập trình mạng – Chương 6 
6.2 Lập trình web với Servlet 
Lấy các thông số HTTP request header: class HttpServletRequest cung cấp các method để lấy các thông số request header. 
String getHeader(header -name) : lấy nội dung của header-name 
Enumeration getHeaderNames () : lấy tất cả các header-name. 
Một số method điển hình : 
Cookie[] getCookies () : dãy Cookie từ client 
int getContentLength () : trả giá trị Content-Length 
int getContentType () : trả giá trị Content-Type 
int getRemoteUser () : giá trị username nếu có authenticate 
9 
Lập trình mạng – Chương 6 
6.2 Lập trình web với Servlet 
Lấy các thông số HTTP request header: 
Lấy các giá trị của biến môi trường CGI: 
QUERY_STRING: getQueryString () 
REMOTE_ADDR: getRemoteAddr () 
REMOTE_HOST: getRemoteHost () 
REQUEST_METHOD: getMethod () 
PATH_INFO: getPathInfo () 
SCRIPT_NAME: getServletPath () 
SERVER_NAME: getServerName () 
SERVER_PORT: getServerPort () 
HTTP_XXX_YYY: getHeader(“Xxx-Yyy ”) 
10 
Lập trình mạng – Chương 6 
6.2 Lập trình web với Servlet 
Gởi dữ liệu cho web client: dùng đối tượng của class HttpServletResponse : 
Tạo đối tượng PrintWriter để ghi dữ liệu gởi 
PrintWriter out = response.getWriter (); 
Xử lý các mã HTTP trả về với các method của class HttpServletResponse : 
void setStatus(int statusCode ) : gởi các mã response 
void sendError(int errorCode,String msg ): gởi mã lỗi theo giao thức HTTP và message 
void sendRedirect(String URL) : chuyển đến một trang URL khác 
Các mã có thể theo giao thức HTTP hoặc dùng các hằng số trong class HttpServletResponse . 
11 
Lập trình mạng – Chương 6 
6.2 Lập trình web với Servlet 
Xử lý Cookie với web browser: 
Chức năng Cookie 
Kết hợp với web browser để lưu các thông số cần thiết . 
Thông tin có thể dùng để thiết lập phiên làm việc(session ) trong các ứng dụng thương mại điện tử(e -commerce). 
Lưu trữ username, password 
Thông tin để customize web site cho user hay dùng cho cơ chế personalization 
12 
Lập trình mạng – Chương 6 
6.2 Lập trình web với Servlet 
Ghi thông tin Cookie lên máy client: 
Thông tin được truyền đi trong field Set-Cookie HTTP header 
Dùng method addCookie(Cookie cookie) của class HttpServletResponse . 
Các thuộc tính quan trọng trong class Cookie: 
Cookie name: setName(String name) – getName () 
Cookie value: setValue(String value) – getValue () 
Max Age: setMaxAge(int seconds) – getMaxAge () 
13 
Lập trình mạng – Chương 6 
6.2 Lập trình web với Servlet 
Ví dụ : 
String user=“”,pass=“”; 
Cookie[] cookies = request.getCookies (); 
if(cookies.length ==0){ 
	user = reques

File đính kèm:

  • pptbai_giang_phat_trien_web_nang_cao_chuong_vi_lap_trinh_web_vo.ppt