Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 14 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
14
Dung lượng
709,06 KB
Nội dung
ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit CHUYÊNĐỀJ2EENÂNGCAO BÀI TẬP THỰC HÀNH TUẦN JSP & SERVLET Nội dung Phần :Lý thuyết .2 JSP syntax 2 Servlet Phần 2: Thực hành .8 Hướng dẫn i t p p d ng: 13 http://groups.google.com.vn/group/huflit_j2ee ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit Phần : Lý thuyết JSP syntax - Khai báo code java nội dung HTML - Khai báo biến & phương thức: - Kết xuất giá trị đối tượng: - Khai b o thư viện: - Nhúng file: - Chuyển hướng trang jsp - Tạo lớp đối tượng java Gọi phương thức n o Bean: ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit Servlet Servlet công nghệ Java chạy máy chủ(server) dùng để xử lý yêu cầu từ client Servlet “giống tầng liên lạc” request từ Web browser HTTP client databases ứng d ng HTTP server Kiến trúc Công việc Servlet thực hiện: Đọc c c liệu tường minh không tường minh Client gửi đến Xử lý v lưu trữ c c liệu cung cấp dạng HTML Gửi trả lời liệu tường minh cho Client (dạng HTML), cung cấp c c nội dung động, ví d trả lời yêu cầu Client c c câu truy vấn v o c c CSDL… http://groups.google.com.vn/group/huflit_j2ee ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit Servlet API API - Gói javax.servlet chứa c c lớp v c c giao diện kế thừa giao diện Servlet c ch độc l p - Gói javax.servlet.http chứa c c lớp v giao diện HTTP c thể Servlets implements Servlet Interface kế thừa ( extends) lớp implemented Servlet Interface GenericServlet & HttpServlet Chuyên đềJ2EEnângcao http://sites.google.com/site/tinhuynhuit - Phương thức doGet(),doGet() có hai tham số đối tượng thuộc hai lớp HttpServletRequest v HttpServletResponse Hai đối tượng cho phép truy c p đầy đủ tất thông tin yêu cầu cho phép gửi liệu kết cho Client HttpServletRequest cho phép nh n tham số m Client gửi đến thông qua c c phương thức getParameterName(), getParameterValue() để x c định tên gọi v gi trị c c tham số HttpServletResponse cung cấp hai phương thức để trả lại kết cho Client Phương thức getWriter() ghi liệu dạng văn getOutputStream() cho lại liệu dạng nhị phân C c dạng exception: javax.servlet.ServletException javax.servlet.UnavailableException http://groups.google.com.vn/group/huflit_j2ee ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit Life Cycle Servlet Phương thức init() có thuộc tính l đối tượng ServletConfig, Servlet đọc c c đối số khởi tạo thông qua đối tượng ServletConfig Được dùng thực công việc gọi resource, tạo kết nối database Server gọi init() lần nạp Servlet v sau không gọi lại nữa, trừ phải nạp lại - Service dùng để xử lý request Mỗi server nh n request đến servlet tạo luồng (thread ) gọi Service C c phương thức Service kiểm tra loại request ((GET, POST, PUT, DELETE, ) để gọi hàm tương ứng doGet, doPost, doPut, … Phương thức n y gọi để xử lý yêu cầu Nó không gọi, gọi lần hay nhiều lần Servlet ngưng tải - destroy() : Phương thức gọi lần trước Servlet ngưng tải v sau kết thúc dịch v - ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit Ví dụ servlet : - Trả text: 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"); } } - Trả nội dung HTML import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloWWW extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("\n" + "\n" + "Hello WWW\n" + "\n" + "Hello WWW\n" + ""); } } http://groups.google.com.vn/group/huflit_j2ee ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit Phần 2: Thực hành Hướng dẫn 1.1 Chạy Servlet HelloWorld B1 Tạo web application b i hướng dẫn tuần B2 Tạo Servlet HelloWorld có code trường hợp 1.2 LoginServlet Tạo web application (xem b i t p tuần 1) 2: Tạo Servlet có tên l LoginServlet ChuyênđềJ2EEnângcao http://groups.google.com.vn/group/huflit_j2ee http://sites.google.com/site/tinhuynhuit ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit File LoginServlet.java tạo default pakage - Servlet tạo gồm: public class LoginServlet extends HttpServlet { protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { … } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { … } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { … } public String getServletInfo() { … } } Trong index.jsp, c i đặt form đăng nh p với username v password v action gọi tới LoginServlet ChuyênđềJ2EEnângcao Thêm đoạn code sau: Cách 1: http://groups.google.com.vn/group/huflit_j2ee http://sites.google.com/site/tinhuynhuit ChuyênđềJ2EEnângcao Cách 2: http://sites.google.com/site/tinhuynhuit ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit - Chạy v xem kết - Nếu chạy h m h m n o chạy, giải thích? ậ : Viết chương trình tính to n số với c c phép tính m n hình sau http://groups.google.com.vn/group/huflit_j2ee ChuyênđềJ2EEnângcao http://sites.google.com/site/tinhuynhuit Xử lý button ack v Close b ng c ch dùng javascript có dạng Website lý thuyết: http://sites.google.com/site/tinhuynhuit/courses/developenterprise-application-with-jee Group thực hành: https://groups.google.com/forum/?hl=vi#!forum/huflit_j2ee [...].. .Chuyên đềJ2EE nâng cao Thêm đoạn code sau: Cách 1: http://groups.google.com.vn/group/huflit _j2ee http://sites.google.com/site/tinhuynhuit ChuyênđềJ2EE nâng cao Cách 2: http://sites.google.com/site/tinhuynhuit ChuyênđềJ2EE nâng cao http://sites.google.com/site/tinhuynhuit - Chạy v xem kết quả - Nếu chạy cả 2 h m trên thì h m n o được chạy, giải thích? 2 ậ : Viết chương trình tính to n 2 số... hình sau http://groups.google.com.vn/group/huflit _j2ee ChuyênđềJ2EE nâng cao http://sites.google.com/site/tinhuynhuit Xử lý button ack v Close b ng c ch dùng javascript có dạng Website lý thuyết: http://sites.google.com/site/tinhuynhuit/courses/developenterprise-application-with-jee Group thực hành: https://groups.google.com/forum/?hl=vi#!forum/huflit _j2ee