Что лучше использовать переадресацию или перенаправление? - PullRequest
1 голос
/ 16 марта 2012

На моей веб-странице есть форма «Логин», которая отправляет значения в «myServlet». «myServlet» устанавливает соединение с БД, и после этого, если «flag» положительный, я хочу показать «user.jsp» с соответствующими пользовательскими данными, иначе - «error.jsp». Как лучше отобразить эти страницы, используя ServletConfig () ..... forward (req, res) или response.redirect ()? Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 16 марта 2012

Если вы хотите, чтобы это перенаправление было прозрачным для пользователя, вам лучше использовать переадресацию запросов.Когда вы отправляете запрос, он просто передает выполнение в целевой файл JSP.Но когда вы перенаправите его, клиент будет уведомлен об этом, а затем ему снова придется отправить новый запрос к целевой JSP.Таким образом, во втором случае происходит снижение производительности.Переадресация запросов в этом случае имеет дополнительное преимущество.

Перенаправление также имеет преимущество.Когда вы перенаправляете запрос, клиенты узнают об этом.Таким образом, пользователи смогут добавить этот URL в закладки и получить к нему доступ в будущем напрямую.Это хорошая функция, если вы позаботитесь о проблемах безопасности, например, запретите доступ, если вы не вошли в систему и т. Д.

То, что вы хотите сделать сейчас, зависит от вас и ваших требований.это помогает.

0 голосов
/ 17 марта 2012

Когда мы используем механизм forwarding , исходная программа Servlet напрямую связывается с программой-получателем Servlet / Jsp / Web resource, в Механизм перенаправления source сервлет отправляется в оба конца с окном браузера, чтобы связаться с целевой программой Servlet / jsp / web resource.

поэтому механизм пересылки работает быстрее, чем sendRedirection, более того в sendRedirection URL запроса будет изменен, например: www.sun.com (для java) дает нам www.oracle.com.

в приложении перейдите к механизму переадресации ... может быть, вы можете это понять.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...