Spring MVC Controller: quelle est la différence entre "forward forward", "return redirect" et "return jsp file"
Je ne comprends pas ce que je dois utiliser.
J'ai deux pages - intro.jsp(1) et booksList.jsp(2). Pour chaque page, j'ai créé une Classe de Contrôleur.
La première page a bouton qui ouvre une deuxième page:
<form method="GET" action="/request-list">
<input type="submit"/>
</form>
La première question est: je ne suis pas sûr de l'exactitude de ce bouton. Il fonctionne bien, mais j'ai une question marque après avoir appuyé sur ce bouton.
La deuxième question est: Lorsque j'appuie sur ce bouton, la méthode avec l'annotation suivante est appelé (Contrôleur de la deuxième page):
@RequestMapping(value = "/books")
@Controller
public class BooksListController {
@RequestMapping
public String booksList() {
return "jsp/books/booksList";
}
}
Que dois-je retourner par cette méthode? En d'autres termes comment puis-je sauter de la première page à la seconde?
return "redirect:/books"; returns http://localhost:8080/books?
return "jsp/books/booksList"; returns http://localhost:8080/request-list?
return "forward:/books"; returns http://localhost:8080/request-list?
Je vois que le résultat est le même: tous ces Cordes m'a donné la même page (page 2 a été ouvert).
Dans quels cas utiliser est "redirection", "en avant", "la page.jsp"?
Aussi j'ai lu Post/Redirect/Obtenir de l'article. Dois-je utiliser "rediriger" après avoir suivi une méthode de manipulation??
source d'informationauteur Argamidon
Vous devez vous connecter pour publier un commentaire.
Ok, c'est insérer un point d'interrogation parce que vous utilisez la méthode http GET. Vous devez utiliser la méthode POST pour transmettre les données à la demande de la charge utile.
Il renvoie au client (navigateur) qui interprète la réponse http et appelle automatiquement l'URL de redirection
C'processus de la JSP et envoyer le HTML au client
C'transfert de la demande et appelle l'URL directement dans le côté serveur.
À décider lequel utiliser vous devez tenir compte de certains aspects de chaque approche:
De l'avant: c'est plus rapide, le navigateur client n'est pas en cause, le navigateur affiche l'URL d'origine, la demande est transférée ne l'a transmis l'URL.
De redirection: plus lent, le navigateur client est impliqué, le navigateur affiche l'URL redirigée, il crée une nouvelle requête à l'URL redirigée.