Thứ Tư, 18 tháng 6, 2014

Filter

I. Định Nghĩa Filter :
Filter là một kỹ thuật ở mức thấp trong lập trình web của java. Nó được hiểu như là một bộ lọc bao bọc lấy toàn bộ các Servlet và tài nguyên bên trong của server. Mọi request đến và response trả về đều có thể được xử lý bởi những Filter này.


II. Công dụng Filter :
- Xác thực Filter.
- Kiểm tra và lưu trữ Filter.
- Chuyển đổi hình ảnh Filter.
- Nén dữ liệu Filter.
- Mã hóa Filter.
- Lọc các sự kiện tiếp cận nguồn kích hoạt.
III. Ưu điểm Filter :
- Filter cho phép người lập trình có thể cấy các đoạn code để xử lý các luồng yêu cầu và phản hồi hoặc loại bỏ chúng một cách một cách dễ dàng. Chính khả năng này đã giúp filter hoàn toàn trong suốt với các tầng xử lý phía sau.
IV. Cách Dùng Filter :
- Khi một yêu cầu Web container , nó sẽ kiểm tra bộ lọc có mẫu URL phù hợp với URL được yêu cầu.
- Web container đặt các bộ lọc đầu tiên với một kết hợp mẫu URL và mã bộ lọc được thực thi.
- Nếu bộ lọc khác có một mẫu URL phù hợp, mã của nó sau đó được thực hiện. Điều này tiếp tục cho đến khi không có bộ lọc với các mẫu URL phù hợp.
- Nếu không có lỗi xảy ra, yêu cầu đi đến các servlet mục tiêu.
- Servlet trả về phản ứng(response) lại cho người gọi của nó. Bộ lọc cuối cùng được áp dụng cho các yêu cầu là bộ lọc đầu tiên áp dụng cho các phản ứng.
- Cuối cùng phản ứng sẽ được thông qua Web container.
V. Filter API :
Filter API là một phần của Servlet API , Interface Filter có trong gói javax.servlet
- void init(FilterConfig filterConfig): được trợ giúp bởi web container để chỉ ra một bộ lọc mà nó đang được đặt vào dịch vụ.
- void doFilter(ServletRequest request, ServletResponse response, FilterChain chain): gọi bởi container mỗi lần một cặp yêu cầu / đáp ứng được truyền qua chuỗi do một yêu cầu khách hàng cho một nguồn tài nguyên ở cuối của chuỗi.
- void destroy(): để chỉ ra một bộ lọc mà nó đang được đưa ra khỏi dịch vụ.
VI. Demo :
 - Tạo 1 file filter trong packages fis.wpsj..Filter
 Ấn next, chọn ô add information...
-  Chọn Edit, nhập tên file cần kiểm tra (ở đây là ViewAllPost.java)
- Viết Code :
- Chạy : 

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

Đăng nhận xét