Este artículo estudia principalmente el contenido relevante del apoyo de SpringMVC a RESTFULL, de la siguiente manera.
Restful Architecture es una popular arquitectura de software de Internet. Está claramente estructurado, que cumple con los estándares, fácil de entender y fácil de expandir, por lo que está siendo adoptada por más y más sitios web. La arquitectura RESTful especifica las URL. ¿Cómo se ven las URL en formato RESTful? La URL que solicitamos generalmente se ve así:
http: //...../xxx.action? id = 001 & type = aaa
¿Y cómo se ve el estilo de URL de REST? Generalmente es similar a:
http: //..../xxx/001
Por lo tanto, REST tiene una característica muy obvia: haga que la URL sea conciso y pase los parámetros al servidor a través de la URL. SpringMVC también admite esta URL de estilo REST. Definamos un controlador para probarlo:
// Consulta información del producto, salida JSON, use Restful@requestmapping ("/itemsView/{id}") public @ResponseBody itemScustom itemsView (@PathVariable ("ID") ID de entero) arroja una excepción {itemScustom itemScustom = itemService.FindiTemsByID (id); return itemScustom;} @ResponseBody es una anotación utilizada para convertir itemsCustom a JSON, mientras que @PathVariable Annotation está relacionada con REST. El {id} en @RequestMapping(value=”/ itemsView/{id}”) representa un marcador de posición. Entonces el valor aprobado aquí se pasará al parámetro formal marcado por @PathVariable . Si el parámetro formal es el mismo que la variable en el marcador de posición, ya no puede especificarlo en la anotación, de lo contrario la variable (es decir, ID) en este marcador de posición debe especificarse en la anotación. De esta manera, los parámetros se pueden pasar a través de la URL a los parámetros formales.
Pero esto no funciona, y aún necesita configurar REST en el controlador frontal, de la siguiente manera:
< <Amam-Value> classpath: spring/springmvc.xml </marr-value> </it-param> </servlet> <ervlet-mapping> <ervlet-name> springmvc_rest </servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
La interceptación de todas las URL (/), esta configuración no tiene conflicto con los controladores frontales configurados anteriormente y puede coexistir. Después de esta configuración, puede ingresar http: // localhost: 8080/springmvc_study/itemsview/1 en el navegador para probar los datos devueltos al navegador. Puede ver que se devuelve una cadena de datos JSON.
Pero hay un problema. Después de usar la configuración anterior, se interceptarán todas las URL y se interceptarán los recursos estáticos. Por lo tanto, el desplazamiento también analizará los recursos estáticos, pero esto causará un error, por lo que debemos establecerlo para no analizar los recursos estáticos. como:
<
Si hay otros recursos estáticos, también debe configurarlos para que no analice los recursos estáticos. Puede acceder a ellos directamente al acceder a los recursos estáticos.
Lo anterior es todo el contenido de este artículo sobre la breve discusión sobre el apoyo de SpringMVC a RESTFULL, y espero que sea útil para todos. Los amigos interesados pueden continuar referiéndose a otros temas relacionados en este sitio. Si hay alguna deficiencia, deje un mensaje para señalarlo. ¡Gracias amigos por su apoyo para este sitio!