Java Servlet

36 804 8
Java Servlet

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Java Servlet

Java ServletJava Servletthangld@uit.edu.vnthangld@uit.edu.vnKhoa Mạng máy tính và Truyền thôngKhoa Mạng máy tính và Truyền thôngĐại học Công nghệ Thông tinĐại học Công nghệ Thông tin Nội dungNội dungGiới thiệu chungGiới thiệu chungVí dụ mở đầuVí dụ mở đầuHTTP ServletsHTTP ServletsSession TrackingSession TrackingCookiesCookies Java ServletJava ServletServlet là các chương trình chạy trên máy Servlet là các chương trình chạy trên máy server (servlet container)server (servlet container)Hoạt động như là lớp trung gian giữa máy Hoạt động như là lớp trung gian giữa máy client (với các yêu cầu HTTP) và CSDL hoặc client (với các yêu cầu HTTP) và CSDL hoặc các ứng dụng kháccác ứng dụng khácPhát sinh các nội dung (HTML) độngPhát sinh các nội dung (HTML) độngWebBrowserWebServerHTTPRequestHTTPResponseCSDLCSDLJava Application /Java Application /WebServiceWebServiceServlet CGI: Common Gateway InterfaceCGI: Common Gateway InterfaceCác chương trình CGI truyền thống thực Các chương trình CGI truyền thống thực thi trên Web server phục vụ các yêu cầu thi trên Web server phục vụ các yêu cầu HTTP từ clientHTTP từ clientClient gửi một HTTP requestClient gửi một HTTP requestServer thực thi chương trình CGIServer thực thi chương trình CGIHTTP server nhận kết quả trả về từ chương HTTP server nhận kết quả trả về từ chương trình CGI (thường dưới dạng HTML) và gửi trình CGI (thường dưới dạng HTML) và gửi trả về cho clienttrả về cho client Java Servlet vs. CGIJava Servlet vs. CGIƯu điểm của servletƯu điểm của servletHiệu quả hơn, mạnh mẽ hơnHiệu quả hơn, mạnh mẽ hơnDễ sử dụngDễ sử dụngKhả chuyểnKhả chuyểnAn toàn hơnAn toàn hơn Java Servlet vs. Java AppletJava Servlet vs. Java AppletServlet là server-side prog., thực thi ở phía Servlet là server-side prog., thực thi ở phía server; applet là client-side prog., thực thi ở server; applet là client-side prog., thực thi ở máy client (browser)máy client (browser)Servlet tạo nên nội dung động gửi về cho Servlet tạo nên nội dung động gửi về cho client; applet làm cho trang web thêm sống client; applet làm cho trang web thêm sống độngđộngKhông giống như applet, servlet không có Không giống như applet, servlet không có GUI mà chỉ cài đặt những thao tác xử lý GUI mà chỉ cài đặt những thao tác xử lý business logicbusiness logic Ví dụ mở đầuVí dụ mở đầuimport java.io.*;import javax.servlet.*;public class SimpleGenericServlet extends GenericServlet { public void service (ServletRequest request,ServletResponse response)throws ServletException, IOException {response.setContentType("text/plain");PrintWriter out = response.getWriter();out.println("Hello World");out.close();} } Ví dụ mở đầuVí dụ mở đầuservice()service(): là phương thức quan trọng : là phương thức quan trọng nhất trong một servletnhất trong một servletXác định nhiệm vụ của servletXác định nhiệm vụ của servletĐược tự động gọi thực hiện khi có yêu cầu từ Được tự động gọi thực hiện khi có yêu cầu từ clientclientPhải được override khi lập trình servletPhải được override khi lập trình servletPhương thức này nhận vào hai tham sốPhương thức này nhận vào hai tham sốServletRequestServletRequestServletResponseServletResponse ServletRequest & ServletResponseServletRequest & ServletResponseĐược định nghĩa trong package Được định nghĩa trong package javax.servletjavax.servletĐối tượng Đối tượng requestrequest và và responseresponse được được server truyền vào khi gọi thực thi phương server truyền vào khi gọi thực thi phương thức thức serviceservicerequestrequestChứa tất cả những thông tin từ browser gửi lên Chứa tất cả những thông tin từ browser gửi lên serverserverresponseresponseĐược sử dụng để gửi thông tin về cho browserĐược sử dụng để gửi thông tin về cho browser Biên dịch và thực thi servletBiên dịch và thực thi servletBiên dịchBiên dịchCần có gói thư viện Cần có gói thư viện servlet.jarservlet.jarMôi trường thực thiMôi trường thực thiCài đặt và khởi động TomcatCài đặt và khởi động TomcatĐặt các servlet đúng vị trí trên serverĐặt các servlet đúng vị trí trên serverThực thiThực thihttp://<server>:8080/servlet/<tên-servlet>http://<server>:8080/servlet/<tên-servlet> [...]... javax .servlet javax .servlet  Interface Interface Servlet Servlet : khai báo các : khai báo các phương thức của một servlet ( phương thức của một servlet ( init(), init(), service(), service(), … … ) )  GenericServlet GenericServlet thi công interface thi công interface Servlet Servlet  HttpServlet HttpServlet là lớp dẫn xuất từ lớp là lớp dẫn xuất từ lớp GenericServlet GenericServlet ... đồng thời Servlet có thể xử lý nhiều yêu cầu đồng thời  Server kết thúc hoạt động của một servlet Server kết thúc hoạt động của một servlet Server Server Servlet Servlet Servlet Servlet load unload Thread Thread Thread Thread Client Client Xử lý yêu cầu POST Xử lý yêu cầu POST import java. io.*; import javax .servlet. *; import javax .servlet. http.*; public class SimpleHttpServlet extends HttpServlet... thuật, một servlet là một lớp Về mặt kỹ thuật, một servlet là một lớp (chương trình) kế thừa hoặc lớp (chương trình) kế thừa hoặc lớp GenericServlet GenericServlet hoặc hoặc HttpServlet HttpServlet Servlet Servlet GenericServlet GenericServlet HttpServlet HttpServlet Q&A Q&A Cookies Cookies  Mỗi cookie có cấu trúc: Mỗi cookie có cấu trúc: tên=giátrị tên=giátrị  Servlet Servlet  Khởi... javax .servlet. http.HttpSession javax .servlet. http.HttpSession  Session được liên kết với một request Session được liên kết với một request Xử lý: GET & POST Xử lý: GET & POST import java. io.*; import javax .servlet. *; import javax .servlet. http.*; public class SimpleHttpServlet extends HttpServlet { public void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException,... tượng RequestDispatcher từ  HttpServletRequest HttpServletRequest Servlet API 2.2 Servlet API 2.2  ServletContext ServletContext Servlet API 2.1 Servlet API 2.1  Ví dụ Ví dụ RequestDispatcher dis= RequestDispatcher dis= request.getRequestDispatcher( request.getRequestDispatcher( “ “ http://localhost/foo.jsp”); http://localhost/foo.jsp”); Java Servlet Java Servlet thangld@uit.edu.vn thangld@uit.edu.vn Khoa... động Web Browser Web Server HTTP Request HTTP Response CSDL CSDL Java Application / Java Application / WebService WebService Servlet Chu kỳ sống của servlet Chu kỳ sống của servlet  Hoạt động của các servlet được kiểm soát Hoạt động của các servlet được kiểm soát bởi server bởi server  Server nạp và khởi tạo một servlet Server nạp và khởi tạo một servlet  Tạo một thread để thực thi servlet Tạo một thread để thực thi servlet  Servlet có thể... thêm sống động động  Khơng giống như applet, servlet khơng có Khơng giống như applet, servlet khơng có GUI mà chỉ cài đặt những thao tác xử lý GUI mà chỉ cài đặt những thao tác xử lý business logic business logic javax .servlet. http.HttpServlet javax .servlet. http.HttpServlet  Là lớp dẫn xuất của GenericServlet: chứa Là lớp dẫn xuất của GenericServlet: chứa phương thức phương thức service() service()  Phương... dạng HTML) và gửi trả về cho client trả về cho client Xử lý yêu cầu GET Xử lý yêu cầu GET import java. io.*; import javax .servlet. *; import javax .servlet. http.*; public class SimpleHttpServlet extends HttpServlet { public void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/plain"); PrintWriter out = response.getWriter(); out.println("Hello... gửi thông tin về cho browser Java Servlet vs. Java Applet Java Servlet vs. Java Applet  Servlet là server-side prog., thực thi ở phía Servlet là server-side prog., thực thi ở phía server; applet là client-side prog., thực thi ở server; applet là client-side prog., thực thi ở máy client (browser) máy client (browser)  Servlet tạo nên nội dung động gửi về cho Servlet tạo nên nội dung động gửi... servlet  Biên dịch Biên dịch  Cần có gói thư viện Cần có gói thư viện servlet. jar servlet. jar  Mơi trường thực thi Mơi trường thực thi  Cài đặt và khởi động Tomcat Cài đặt và khởi động Tomcat  Đặt các servlet đúng vị trí trên server Đặt các servlet đúng vị trí trên server  Thực thi Thực thi  http://<server>:8080 /servlet/ <tên -servlet& gt; http://<server>:8080 /servlet/ <tên -servlet& gt; . thihttp://<server>:8080 /servlet/ <tên -servlet& gt;http://<server>:8080 /servlet/ <tên -servlet& gt; javax.servletjavax .servlet Interface Interface ServletServlet: khai báo các : khai báo các phương thức của một servlet. chuyểnAn toàn hơnAn toàn hơn Java Servlet vs. Java AppletJava Servlet vs. Java Applet Servlet là server-side prog., thực thi ở phía Servlet là server-side prog.,

Ngày đăng: 13/09/2012, 11:16

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan