What is the correct way to forward a request

4 phương ánCó giải thích
Đề bài
using RequestDispatcher? RequestDispatcher rd = request.getRequestDispatcher("dashboard.jsp");

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở

Đáp án đúng: "rd.forward(request, response); ". Phương thức forward nhận đúng thứ tự tham số là request rồi mới tới phần trả về, và nó chuyển hẳn quyền xử lý sang tài nguyên đích ngay trong cùng một lượt request, nên mọi thuộc tính đã đặt vào request vẫn dùng được ở trang đích và thanh địa chỉ của trình duyệt không đổi. Lựa chọn "rd.forward(response, request); " đảo thứ tự hai tham số nên không khớp chữ ký phương thức và mã không biên dịch được. Lựa chọn "rd.include(request, response); " là lời gọi hợp lệ nhưng khác nghĩa: nó chèn kết quả của tài nguyên kia vào chỗ đang xử lý rồi trả điều khiển về servlet gọi, không phải chuyển tiếp. Lựa chọn "response.sendRedirect("dashboard.jsp"); " không dùng tới bộ điều phối request: nó trả mã chuyển hướng cho trình duyệt, sinh một request mới, URL đổi và dữ liệu trong phạm vi request cũ mất.

Cùng phần 10

Xuất hiện trong 1 bộ đề