Cet article étudie principalement le contenu pertinent du soutien de SpringMVC à Restull, comme suit.
L'architecture Restful est une architecture de logiciels Internet populaire. Il est clairement structuré, conforme aux normes, facile à comprendre et facile à développer, il est donc adopté par de plus en plus de sites Web. L'architecture RESTful spécifie les URL. À quoi ressemble les URL au format Restful? L'URL que nous demandons ressemble généralement à ceci:
http: //...../xxx.action? id = 001 & type = aaa
Et à quoi ressemble le style URL de REST? Généralement, il est similaire à:
http: //..../xxx/001
Par conséquent, REST a une fonctionnalité très évidente: rendre l'URL concise et transmettre les paramètres au serveur via l'URL. SpringMVC prend également en charge cette URL de style repos. Définissons un contrôleur pour le tester:
// Informations sur le produit, sortie JSON, utilisez Restful @ requestmapping ("/ itemsView / {id}") public @ResponseBody itemsCustom itemsView (@Pathvariable ("id") INTER ID) lève exception {itemSCustom itemsCustom = itelesService.FinditemsById (id); return itemscustom;} @ResponseBody est une annotation utilisée pour convertir itemsCustom @PathVariable Le {id} dans @RequestMapping(value=”/ itemsView/{id}”) représente un espace réservé. Ensuite, la valeur réalisée ici sera transmise au paramètre formel marqué par @PathVariable . Si le paramètre formel est le même que la variable dans l'espace réservé, vous ne pouvez plus le spécifier dans l'annotation, sinon la variable (c'est-à-dire ID) dans cet espace réservé doit être spécifiée dans l'annotation. De cette façon, les paramètres peuvent être passés à travers l'URL aux paramètres formels.
Mais cela ne fonctionne pas, et vous devez toujours configurer le repos dans le contrôleur frontal, comme suit:
<! - Configurer DispatcherServlet de contrôleur frontal de Springmvc, Configuration de repos -> <Serplet> <Serplet-Name> SpringMvc_Rest </Servlet-Name> <Servlet-Class> Org.SpringFramework.Web.Servlet.DispatcherServlet </ Servlet-Class> <inintime> <paramname> <Am param-Value> CLASSPATH: Spring / Springmvc.xml </ Param-Value> </Init-Param> </ Servlet> <Servlet-Mapping> <Servlet-Name> Springmvc_Rest </ Servlet-Name> <Url-Pattern> / </ URL-Pattern> </ Servlet-Mapping>
L'interception de toutes les URL (/), cette configuration n'a aucun conflit avec les contrôleurs frontaux configurés précédemment et peut coexister. Après cette configuration, vous pouvez entrer http: // localhost: 8080 / springmvc_study / itemsView / 1 dans le navigateur pour tester les données renvoyées au navigateur. Vous pouvez voir qu'une chaîne de données JSON est renvoyée.
Mais il y a un problème. Après avoir utilisé la configuration ci-dessus, toutes les URL seront interceptées et les ressources statiques seront interceptées. Par conséquent, le Dispatcherservlet analysera également les ressources statiques, mais cela entraînera une erreur, nous devons donc le définir pour ne pas analyser les ressources statiques. comme:
<! - Analyse des ressources statiques, y compris JS, CSS, IMG ... -> <MVC: Ressources Location = "/ JS /" Mapping = "/ JS / **"> </ Mvc: Resources> <MVC: Resources Location = "/ img /" Mapping = "/ img / **"> </ mvc: Resources>
S'il existe d'autres ressources statiques, vous devez également les configurer afin que vous n'analyserez pas les ressources statiques. Vous pouvez y accéder directement lorsque vous accédez aux ressources statiques.
Ce qui précède est tout le contenu de cet article sur la brève discussion du soutien de SpringMVC à Restull, et j'espère que cela sera utile à tout le monde. Les amis intéressés peuvent continuer à se référer à d'autres sujets connexes sur ce site. S'il y a des lacunes, veuillez laisser un message pour le signaler. Merci vos amis pour votre soutien pour ce site!