Spring MVC Ejemplo Hola Mundo

By | 08/07/2012

Este es un simple Hola Mundo para mostrar Spring MVC

Librerías necesarias

Las encuentras en http://www.springsource.org/download/

Configuración de Spring MVC en tu web.xml

Prestar atención a org.springframework.web.servlet.DispatcherServlet que es la clase de Spring que se encarga de ‘despachar’ las url que están bajo url-pattern, en este ejemplo todas las url con *.html.
Spring MVC buscará el archivo de contexto de Spring con el nombre [servlet-name]-servlet.xml dentro del directorio WEB-INF. En este caso buscará /WEB-INF/spring-servlet.xml.

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
   xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
   id="WebApp_ID" version="2.5">
   <display-name>SpringMVC</display-name>
   <welcome-file-list>
       <welcome-file>index.jsp</welcome-file>
   </welcome-file-list>
   <servlet>
       <servlet-name>spring</servlet-name>
       <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
       <load-on-startup>1</load-on-startup>
   </servlet>
   <servlet-mapping>
       <servlet-name>spring</servlet-name>
       <url-pattern>*.html</url-pattern>
   </servlet-mapping>
</web-app>

Contexto de Spring de spring-servlet.xml

Le indicamos a Spring que busque en el paquete “controller” los controladores.
UrlBasedViewResolver resolverá los nombres de la vista a través del url buscando dentro de /WEB-INF/jsp/*.jsp las vistas

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:p="http://www.springframework.org/schema/p"
   xmlns:context="http://www.springframework.org/schema/context"
   xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context-3.0.xsd">
 
   <context:component-scan
       base-package="controller" />
 
   <bean id="viewResolver"
       class="org.springframework.web.servlet.view.UrlBasedViewResolver">
       <property name="viewClass"
           value="org.springframework.web.servlet.view.JstlView" />
       <property name="prefix" value="/WEB-INF/jsp/" />
       <property name="suffix" value=".jsp" />
   </bean>
</beans>

Implementando el Controlador

Hemos anotado nuestra clase HelloWorldController como un “Controller” y mapeamos el url /hello para que sea resuelto por el método helloWorld() . Esto muy facilmente con las anotaciones @Controller y @RequestMapping.

Vemos que retornaremos un ModelAndView indicando el nombre de la vista “hello”. Este será nuestro hello.jsp definido y donde mostraremos el resultado con el “message”.

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
 
@Controller
public class HelloWorldController {
 
   @RequestMapping("/hello")
   public ModelAndView helloWorld() {
       ModelAndView modelAndView = new ModelAndView();
       modelAndView.setViewName("hello");
       modelAndView.addObject("message", "Hello World..!!! I'm live!!");
       return modelAndView;
   }
 
}

JPS index.jsp

Hemos mapeado /hello en nuestro Controller HelloWordController.helloWorld()

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
 
   <a href="hello.html">Are you Live...?</a>
 
</body>
</html>

hello.jsp Será la vista a la que nos llevara nuestro controlador. Esto lo indicamos cuando hicimos modelAndView.setViewName(“hello”)

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
 
<body>
   <h1>
    ${message}
   </h1>
</body>
 
</html>

Compartir esto:

4 thoughts on “Spring MVC Ejemplo Hola Mundo

  1. sergio baltazar

    bueno estpy trabajando en en IDE netbeans , de tal forma que que no se si hay que configurar el dispatcher-servelet.xml , hice lo mismo que tu hiciste pero cuando el mensaje sale blanco la variable

    Reply
    1. Gustavo Post author

      Es correcto. Debes configurar el dispatcher.

      Reply
  2. sergio baltazar

    NO me corre me sale null bro o nada||

    Reply
    1. Gustavo Post author

      Hola, para ayudarte seria necesario algo mas de info, el stacktrace. saludos!

      Reply

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *