Thứ Sáu, 13 tháng 6, 2014

Dispatcher In Servlet

Ngày nay việc phát triển các ứng dụng web là một việc mà người lập trình viên cần phải phân phối các yêu cầu xử lý và tạo phản ứng cho nhiều đối tượng Servlet. Điều này được thể hiện rõ hơn với cách sử dụng phương pháp "Request Dispatcher". Phương pháp "Request Dispatcher" được thực hiện bởi servlet container để gửi đi hoặc để vượt qua các yêu cầu một nguồn tài nguyên web như Servlet, trang HTML hoặc trang JSP. Để gửi yêu cầu từ Servlet hoặc JSP để nguồn tài nguyên web sử dụng RequestDispatcher chúng ta cần phải thực hiện các bước sau: 
  1. Có đối tượng để tham chiếu với phương pháp Request Dispatcher
  2. Sử dụng phương thức include(), forwards() và phương pháp Request Dispatcher.
Sau đây chúng ta sẽ tìm hiểu về các phương thức include() và forwards().- phương thức include() :có thể hiểu method này cho phép bao gồm nội dung của tài nguyên (servlet , JSP, file HTML) vào trong response và gửi lên máy chủ xử lý.
include() method.

- phương thức forward(): phương thức chuyển tiếp này làm cho người ta cảm thấy mọi thứ được xử lí đúng đắn và nhanh chóng hơn vì nó chuyển tiếp yêu cầu của người dùng tới server xử lí. Hoàn toàn không giống với phương thức include() là chuyển nội dung lên server xử lí.
forward() method.
Sau đây tôi sẽ làm bài Demo  Dispatcher in Servlet về việc trả lời các câu hỏi dựa trên các dữ liệu có sẵn dùng Mock data như bài trước. Cơ bản có thể hiểu như sau :


Bước 1 :  Các bạn hãy tạo một Web Application như hướng dẫn ở đây.
Bước 2  Tạo các Servlet có tên Banner,Response và GateKeeper và 1 file JSP có tên là View. Cách tạo các file Servlet các bạn có thể tham khảo tại đây . Còn dưới đây là các bước tạo 1 file JSP.
Chuột phải vào Foler WEB-INF chọn New=>Other.

Click vào Web=>JSP đặt tên rồi Finish.
Bước 3: Sau đây là code trong các class.





Hình ảnh sau khi Demo.

Khi bạn chọn đúng.

Khí bạn chọn sai.
Các bạn có thể tham khảo Demo tại đây.
Theo ý kiến cá nhân tôi thì sau khi làm bài Demo này chúng ta sẽ hiểu thêm về Dispatcher trong Servlet. Cảm nhận của tôi thì code khá rành mạch và dễ hiểu sử dụng phương thức forward() thì chúng ta có thể gửi request từ các servlet khác nhau cho nhau và dữ liệu gửi đi chính xác và nhanh chóng.Còn phương thức include() giúp chúng ta thêm thông tin từ các servlet khác nhau cho nhau. Hi vọng bài viết này sẽ có thể giúp đỡ các bạn. Cảm ơn.


Không có nhận xét nào:

Đăng nhận xét