intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Servlets

Chia sẻ: Vi Xuan Duong | Ngày: | Loại File: PDF | Số trang:65

170
lượt xem
43
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Có nhiều phương pháp để xây dựng một ứng dụng web động như: sử dụng công nghệ Php, Asp.Net, Java(servlet/jsp),… Để xây dựng web bằng công nghệ Java thì phải có hiểu biết về Jsp, Servlet và mô hình MVC.

Chủ đề:
Lưu

Nội dung Text: Servlets

  1. Servlets 1
  2. Nội Dung  Giới Thiệu  Chương trình servlet đầu tiên  Xử lí các yêu cầu request  Form data  HTTP request headers  Phát sinh trả lời - response  HTTP status codes  HTTP response headers  Xử lí cookies  Session tracking 2
  3. Giới thiệu Servlet  Đọc nội dung từ client: data & header  Trả lời theo định dạng HTML  Gửi dữ liệu ẩn 3
  4. Ưu điểm  Hiệu quả  Tiện lợi: nhiều công cụ  Mạnh: sharing data, pooling, persistence  Khả chuyển  Bảo mật  Rẻ tiền 4
  5. Trang web động  Phụ thuộc vào người sử dụng  Mua hàng trên mạng  Nội dung phải thay đổi liên tục  Bản tin, dự báo thời tiết  Đọc nội dung từ database hoặc từ web server khác  Báo giá hàng hóa 5
  6. Một số Servlet Server  Apache Tomcat  http://jakarta.apache.org/tomcat/  Allaire/Macromedia JRun  http://www.allaire.com/products/jrun/  New Atlanta ServletExec  http://www.servletexec.com/  Gefion Software LiteWebServer  http://www.gefionsoftware.com/LiteWebServer/  Caucho's Resin  http://www.caucho.com/ 6
  7. Servlet đơn giản import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloWorld extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); out.println("Hello World"); } } 7
  8. Biên dịch và chạy Servlets  Đặt CLASSPATH  Đến file Servlet JAR (install_dir/lib/servlet.jar).  Biên dịch và đặt file dịch .class đúng vị trí  tomcat_install_dir/webapps/ROOT/WEB-INF/classes  jrun_install_dir/servers/default/default-app/ WEB-INF/classes  Bật tag trong file web.xml  Gọi chương trình servlets  http://host/servlet/ServletName 8
  9. Servlet Hello theo định dạng HTML public class HelloWWW extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); String docType = "\n"; out.println(docType + "\n" + "Hello WWW\n"+ "\n" + "Hello WWW\n" + ""); } } 9
  10. Hosting lên Servlet server  http://s43.eatj.com/ free trial 10
  11. Upload chương trình .war  http://vtvan.s43.eatj.com/hello/hello.jsp 11
  12. The Servlet Life Cycle  init : thực hiện 1 lần duy nhất  service : tạo thread cho mỗi client  doGet, doPost, doXxx  destroy : thực hiện khi shutdown servlet 12
  13. Khởi động - init  Dùng ServletConfig.getInitParameter  ServletConfig config = getServletConfig();  message = config.getInitParameter("message");  Đặt tham số trong web.xml  …/WEB-INF/web.xml  Thường được dùng khi muốn đọc dữ liệu tại thời điểm init từ đĩa 13
  14. Tạo tham số Init  …/WEB-INF/web.xml ShowMsg cwp.ShowMessage message Shibboleth repeats 5 14
  15. Đọc tham số init public class ShowMessage extends HttpServlet { private String message; private String defaultMessage = "No message."; private int repeats = 1; public void init() throws ServletException { ServletConfig config = getServletConfig(); message = config.getInitParameter("message"); if (message == null) { message = defaultMessage; } try { String repeatString = config.getInitParameter("repeats"); repeats = Integer.parseInt(repeatString); } catch(NumberFormatException nfe) {} } 15
  16. public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); String title = "The ShowMessage Servlet"; out.println(ServletUtilities.headWithTitle(title)+ "\n" + "" + title + ""); for(int i=0; i
  17. Chạy chương trình 17
  18. Chương trình Counter  Đếm số lần truy cập của người sử dụng 18
  19. Xử lí dữ liệu của Form 19
  20. Form Data http://host/path?username=abc&passwd=ia 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2