Comenzando con spring-mvc

Primer proyecto Spring-MVC

Cree un proyecto web dinámico, proporcione la siguiente información como se indica a continuación

  1. Nombre del proyecto: DemoSpringMVCProject
  2. Tiempo de ejecución de destino: configurado como servidor Apache Tomcat v7.0

Haga clic en finalizar, con éxito hemos creado un proyecto web dinámico.

** Ahora tenemos que configurar el marco Spring-MVC: **

  1. Cree web.xml en la carpeta ’ WebContent\WEB-INF\ ‘
<?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>Demo9</display-name>

<servlet>
  <servlet-name>spring</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>

<servlet-mapping>
  <servlet-name>demo</servlet-name>
  <url-pattern>/</url-pattern>
</servlet-mapping>

</web-app>
  • Donde la clase DispatcherServlet intercepta la solicitud entrante y determina qué controlador maneja la solicitud.
  • Vamos a usar servlet-name ’ demo ’ al crear servlet.xml
  1. Cree demo-servlet.xml en la carpeta ’ WebContent\WEB-INF\ ‘
<?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:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

<context:component-scan base-package="com"></context:component-scan>

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
 <property name="prefix" value="/WEB-INF/jsp/"></property>
 <property name="suffix" value=".jsp"></property>
</bean>

</beans>
  • context:component-scan se usa para escanear todos los controladores definidos en el paquete ‘com’.

  • Interfaz ViewResolver Úselo para administrar la asignación entre vistas lógicas y reales. La implementación predefinida de la resolución de vistas está disponible para mapear las vistas. Ej: InternalResourceViewResolver, VelocityViewResolver.

  • Para buscar todas las páginas jsp, hemos definido prefijo que no es más que una propiedad de establecimiento, su valor se establece como ’/WEB-INF/jsp/’(ruta de la carpeta). Sufijo que no es más que una propiedad captadora, su valor se establece como ’.jsp’ (archivo de búsqueda con una extensión .jsp)

  1. Agregue las bibliotecas requeridas:

Agreguemos Spring Framework y bibliotecas comunes de API de registro en nuestro proyecto. Para hacer esto, haga clic derecho en el nombre de su proyecto DemoSpringMVCProject y luego siga la siguiente opción disponible en el menú contextual: Build Path -> Configure Build Path para mostrar la ventana Java Build Path de la siguiente manera:

Ahora use el botón Agregar archivos JAR externos disponible en la pestaña Bibliotecas para agregar los siguientes archivos JAR principales de los directorios de instalación de Spring Framework y Common Logging:

  • commons-logging-1.1.1

  • spring-aop-4.1.6.LIBERAR

  • spring-aspects-4.1.6.RELEASE

  • frijoles-primavera-4.1.6.LIBERAR

  • primavera-contexto-4.1.6.LIBERAR

  • Spring-context-support-4.1.6.RELEASE

  • spring-core-4.1.6.RELEASE

  • primavera-expresión-4.1.6.LIBERAR

  • resorte-instrumento-4.1.6.LIBERAR

  • resorte-instrumento-tomcat-4.1.6.RELEASE

  • primavera-jdbc-4.1.6.RELEASE

  • spring-jms-4.1.6.LIBERAR

  • primavera-mensajes-4.1.6.LIBERAR

  • spring-orm-4.1.6.LIBERAR

  • resorte-oxm-4.1.6.LIBERAR

  • Spring-test-4.1.6.RELEASE

  • primavera-tx-4.1.6.LIBERAR

  • spring-web-4.1.6.LIBERAR

  • spring-webmvc-4.1.6.RELEASE

  • primavera-webmvc-portlet-4.1.6.RELEASE

  • spring-websocket-4.1.6.RELEASE

** Pasemos a las páginas de controlador y jsp: **

  1. Cree un paquete com.demo.controller en la carpeta src.

  2. Cree una clase LoginController en el paquete com.demo.controller

    package com.demo.controller;

    import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping;

    @Controller public class LoginController {

    @RequestMapping("/") public String startPage(){ return “login”; }

    @RequestMapping("/signin") public String handleRequest(HttpServletRequest request){ String name = request.getParameter(“name”); String pass = request.getParameter(“password”); if(name.equals(pass)) { return “welcome”; }else{ return “login”; }

    }
    

    }

  3. Cree una página login.jsp y welcome.jsp en ’ WebContent\WEB-INF\jsp\ ‘

iniciar sesión.jsp

   <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
   pageEncoding="ISO-8859-1"%>
   <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
   <html>
   <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Login Page</title>
    </head>
    <body>
      <form action="signin">
          <table>
            <tr>
                <td>User Name : </td>    
                <td><input type="text" name="name" id="name"/> </td>
            </tr> 
            <tr>
                <td>Password: </td>    
                <td><input type="text" name="password"  id="password"/> </td>
            </tr>  
            <tr>
                <td colspan="2"><input type="submit" value="Login"/></td>    
            </tr> 
          </table>
      </form>
    </body>
    </html>

bienvenido.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
  <h1> Welcome to Spring MVC !!! </h1>
</body>
</html>

Agregue DemoSpringMVCProject en el servidor localTomcat y ejecútelo en el servidor.