Il existe une différence importante entre la redirection et le transfert : lors de l'utilisation du transfert, le conteneur JSP utilisera une méthode interne pour appeler la page cible, et la nouvelle page continuera à traiter la même demande, et le navigateur n'aura pas connaissance de ce processus. En revanche, la méthode de redirection signifie que la première page demande au navigateur d'envoyer une nouvelle demande de page. Car, lorsque vous utilisez la redirection, l'URL affichée dans le navigateur deviendra l'URL de la nouvelle page, et lorsque vous utilisez la redirection, l'URL restera inchangée. Les redirections sont plus lentes que les redirections car le navigateur doit faire une nouvelle requête. Dans le même temps, puisque la méthode de redirection génère une nouvelle requête, l'objet dans la requête ne sera pas disponible après une redirection.
Comment choisir de rediriger ou de transférer ? Habituellement, le transfert est plus rapide et permet de conserver l'objet dans la demande, c'est donc le premier choix. Cependant, étant donné qu'après le transfert, l'URL dans le navigateur pointe toujours vers la page d'accueil, si la page actuelle est rechargée, la page d'accueil sera à nouveau appelée. Si vous ne souhaitez pas que cela se produise, choisissez le transfert.
La différence entre le transfert et la redirection
N'utilisez pas la portée de la session uniquement pour transmettre des variables à la page suivante. Cela augmentera la portée de la variable sans raison. Le transfert peut vous aider à résoudre ce problème.
Redirection : toutes les variables stockées dans la requête précédente ne sont pas valides et entrent dans une nouvelle portée de requête.
Transfert : les variables stockées dans la requête précédente ne deviendront pas invalides, tout comme l'assemblage de deux pages.