Este tutorial, pretende mostrar lo fácil que es el uso de Spring MVC.
Requerimientos:
- Netbeans
- Maven 3
- Spring 3.x
- Glassfish Server 3.x
Creación del proyecto.
Creamos un nuevo proyecto web con maven.
Agregamos las dependencias de Spring al archivo de configuración (pom.xml) de maven , con una propiedad
${project.build.directory}/endorsed UTF-8 3.1.0.RELEASE ... org.springframework spring-core ${spring.version} org.springframework spring-webmvc ${spring.version} javax javaee-web-api 6.0 provided
Con la propiedad agregada para la versión de las dependencias de Spring se puede modificar fácilmente cuando se quiera actualizar a una más nueva.
Configuración de Spring.
- Crearemos un archivo llamado spring-mvc-servlet.xml dentro de src/main/webapp/WEB-INF, para esto, agregamos primero la carpeta WEB-INF y dentro creamos dicho archivo.
- Indicaremos en que paquete Spring buscará los controladores.
- Indicaremos como se deben resolver las vistas, para asociarlas a los controladores.
Después de crear la carpeta WEB-INF, dentro creamos el archivo spring-mvc-servlet.xml.
En la linea <context:component-scan base-package="net.jurasec.examples.quickstart" />, indicamos que dentro de ese paquete estarán nuestros controladores.
El bean "viewResolver", resuelve las llamadas a las vistas desde los controladores de la siguiente forma: prefijo + "nombre_vista" + sufijo.
Integrando Spring a la aplicación web.
- Creamos el archivo de configuración de la aplicación web (web.xml) dentro de src/main/webapp/WEB-INF.
contextConfigLocation /WEB-INF/spring-mvc-servlet.xml org.springframework.web.context.ContextLoaderListener spring-mvc org.springframework.web.servlet.DispatcherServlet 1 spring-mvc / 30 index.jsp
Creamos la carpeta jsp, para crear dentro las vistas.
- Creamos una carpeta llamada jsp dentro de WEB-INF y creamos un archivo *.jsp llamado welcome.jsp
La "variable" ${mensaje}, será sustituida por el valor que sea asignado al modelo, desde el controlador.
El controlador y la configuración de la vista.
package net.jurasec.examples.quickstart; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller @RequestMapping("/start") public class MainController { @RequestMapping(method = RequestMethod.GET) public String start(ModelMap model) { model.addAttribute("mensaje", "Iniciando con Spring 3 MVC..."); return "welcome"; } }
Recordemos que en el archivo de configuración de Spring, indicamos que el paquete "net.jurasec.examples.quickstart" será analizado para buscar clases "anotadas" como controladores, para hacerlo agregamos @Controller.
Después de decirle a Spring que esta clase es un controlador, debemos indicar cual será la URL a la cual responderá, esto se hace con @RequestMappin con la cual le decimos que cuando sea invocada la url "http://www.miurl.net/contexto/start" Spring recibirá la petición y la despachará hacia esta clase y dependiendo del tipo de metodo de la petición, la clase reaccionara. Aqui vemos que solo respondera a las peticiones de tipo GET, por medio del metodo start.
El metodo start agrega un atributo(mensaje) al modelo, el cual será leido en la vista, finalmente regresa el nombre de la vista, que según la configuración del bean InternalResourceViewResolver será en /WEB-INF/jsp/welcome.jsp
El resultado final es:
Descarga el proyecto de Netbeans.
El resultado final es:
Descarga el proyecto de Netbeans.
1 comentarios:
Buen aporte !!
Publicar un comentario