Sunteți pe pagina 1din 7

UNIVERSIDAD CATOLICA LOS ANGELES

CHIMBOTE

Facultad De Escuela De Ingeniera De Sistema

Curso:

Tecnología de Programacion

Tema:

Modelo MVC Spring

Estudiante:

Espinoza Sanjinez Jhosmar Antoni

Ciclo: V

Docente:

Sanjinez Cabrera Geronimo

2019
Cómo Funciona Spring MVC

Basado en consulta URL de http, el DispatcherServlet llama al controlador


correspondiente.
Una vista es renderizada y enviada a la respuesta http.

Declaración de Spring Servlet


En 'WEB-INF/web.xml', se le declaran las URLs Spring DispatcherServlet y mapa
'*.html':

<?xml version="1.0" encoding="UTF-8"?>


<web-app version= "2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >

<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-
class>org.springframework.web.servlet.DispatcherServlet</servlet-
class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>

<welcome-file-list>
<welcome-file>
jsp/index.jsp
</welcome-file>
</welcome-file-list>

</web-app>

Configuración de Spring Servlet


Crear el archivo de configuracion Spring 'WEB-INF/springmvc-servlet.xml'
(nombre basado en el nombre del servidor superior).

<?xml version= "1.0" encoding= "UTF-8"? >


<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd >

<bean name="/hello_world.html"
class="springmvc.web.HelloWorldController"/>

<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewReso
lver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>

</beans>

Mapear la URL /hello_world.html al controlador HelloWorldController.

Declara resolución de vista: cuando la vista 'view_name' es llamada (desde el


controlador), el archivo '/jsp/view_name.jsp' será usado.

Controlador
Creación del controlador 'WEB-
INF/src/springmvc/web/HelloWorldController.java'

package springmvc.web;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

public class HelloWorldController implements Controller {

public ModelAndView handleRequest(HttpServletRequest request,


HttpServletResponse response) throws
ServletException, IOException {

String aMessage = "Hello World MVC!";

ModelAndView modelAndView = new


ModelAndView("hello_world");
modelAndView.addObject("message", aMessage);

return modelAndView;
}
}

Este controlador llama a la vista 'hello_world', pasándole 'message'(como un atributo


Struts).

Vista
Ahora la vista: 'jsp/hello_world.jsp'.

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>


<html>
<body>
<p>This is my message: ${message}</p>
</body>
</html>

Muestra el atributo del mensaje anteriormente establecido en el controlador.

Hacerlo funcionar
Desde 'WEB-INF' tipo carpeta.

ant

Volver a correr Tomcat y revisar si funciona.


http://localhost:8180/springmvc/hello_world.html

Resumen
Tu proyecto debe lucir así:

- Declaramos servlet Spring en web.xml.


- Creamos un archivo de configuración Spring, donde mapeamos URL a un controlador
y definir una forma de resolver las vistas.
- Creamos un controlador y una vista.
DEFINICIONES

El Spring MVC Framework ofrece una sencilla interfaz basada en infraestructura web
para la entrega arquitecturas MVC. En la mayoría de los casos una aplicación de Spring
MVC es muy comprobable, porque Spring no requiere el desarrollador para extender una
base abstracta acciones / controladores de Struts.

Hay muchas otros Frameworks web basados en Java por ahí (Struts, WebWork, varias
implementaciones de JSF, Tapestry, etc) y todos tienen sus pros y sus contras, pero si
usted ya está usando Spring Framework para otros servicios, un beneficio adicional de
usar Spring MVC es que otros Spring Beans pueden ser fácilmente inyectados en los
controladores de red. Si los servicios inyectados en los controladores son interfaces,
entonces es muy fácil escribir implementaciones sencillas alternativas de las interfaces
para el fin de probar sus controladores (1).

Interfaces clave:

Controlador - Debe implementar handleRequest ModelAndView (solicitud, respuesta) -


Esta es la interfaz de controlador base, comparable a la idea de una acción de Struts.
Vista - Debe implementar void render (modelo, solicitud, respuesta) Este es el punto de
vista MVC para una interacción en la web. Las implementaciones son responsables
para representar el contenido, y exponer el modelo.
Para completar el trío MVC, tenga en cuenta que el modelo se maneja normalmente como
un java.util.Map que se devuelve con la vista y los valores están disponibles, por ejemplo
en un JSP, utilizando un <jsp:useBean/> donde la identificación corresponde al valor de
la clave en el modelo (mapa).

Clases clave:

DispatcherServlet - el servlet principal que distribuye las solicitudes para los


manejadores. Este será normalmente conectado en su web.xml y se le asigna patrón(es)
URL para ser manejada con Spring MVC.

ModelAndView - Soporte tanto para modelo y vista en el marco web MVC.

SimpleFormController - implementación básica de controlador para hacer envíos de


formularios web estándar, tiene forma configurable y puntos de vista de éxito, y una
cadena onSubmit para conveniencia primordial.

“Spring es una tecnología dedicada para permitir consruir aplicaciones usanjo


POJO’s…”, Rod Johnson- The Server Side.
Spring MVC
Pros
o Fácil configuración con Anotaciones y Convenciones.
o Se integra con varias opciones de Vista de forma similar: JSP/JSTL. Tiles, Free
Marker, Excel, PDF, JSON, Velocity.
o Excelente soporte REST.
o Ciclo de vida para unión primordial, Validación, etc.
o Inversión de Control facilita las pruebas.
o Permite completo control de URL.
o Permite usar Commons Validator, una solución madura.
o Permite agregar parámetros a un redireccionamiento.
o Está obteniendo más prensa, mayormente por otras características del Framework.

Contras
o Recarga instantánea incorporada, necesita JRebel o Spring Roo.
o Proceso de desarrollo no abierto, necesita ser Spring Source.
o Soporte Ajax no integrado, requiere librería 3rd-Party.
o Configuración intensiva, montones de XML.
o Casi demasiado flexible, no tiene controlador par común.

Referencias Bibliográficas:
1. Pérez E. Desarrollo de aplicaciones mediante el Framework de Spring. 2015.
[En Linea]. Editorial Madrid: RA-MA. [Citado junio de 2019]. Disponible
en: https://ebookcentral.proquest.com/lib/bibliocauladechsp/detail.action?do
cID=5758932&query=mvc+string#

S-ar putea să vă placă și