..


Enlaces patrocinados

Web - Un ejemplo completo

He aquí un ejemplo de una aplicación web, podemos ver con más precisión cómo implementar un controlador y un jsp, que le permiten añadir un libro de una colección de libros.

En primer lugar, en nuestro web.xml configurar el WebApplicationContext y mapeo de la DispatcherServlet:






 <- PRIMAVERA ->







 <context-param>



  



 <param-name> contextConfigLocation </ param-name>



  



 <param-value> classpath *: applicationContext.xml </ param-value>







 </ Context-param>









 <listener>



  



 <listener-class> org.springframework.web.context.ContextLoaderListener </ listener-class>







 </ Listener>









 <- MVC ->







 <servlet>



  



 <servlet-name> primavera-MVC </ servlet-name>



  



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



  



 <load-on-startup> 1 </ load-on-startup>







 </ Servlet>









 <servlet-mapping>



  



 <servlet-name> primavera-MVC </ servlet-name>



  



 <url-pattern> / action / * </ url-pattern>







 </ Servlet-mapping>



Sin que esto creamos nuestra clase Book:






 public class Libro {





  



 @ Size (min = 1, el mensaje = "El nombre del campo no puede estar vacío")



  



 @ Patrón (regex = "[A-Za-z0-9 _]+", message =" El nombre del campo sólo puede contener letras ")



  



 private String nombre;



	

  



 @ NotNull



  



 @ Size (min = 1, el mensaje = "El campo de autor no puede estar vacío")



  



 @ Patrón (regex = "[A-Za-z']+", message =" El campo de autor sólo puede contener letras ")



  



 autor de cadenas privadas;





  



 DateTimeFormat @ (patrón = "dd / MM / yyyy")



  



 @ NotNull (message = "El campo de fecha de lanzamiento no puede estar vacío")



  



 Fecha dataDiUscita privado;



	

  



 / / Getters y setters .................



  



 //..........







 }



Como usted puede ver nuestro libro tiene tres atributos:
  • nombre del libro
  • autor
  • fecha de lanzamiento
Pero vemos que, además de definir los atributos, también hay anotaciones.
Estas anotaciones son parte de JSR-303 , y si cualquiera de estos implemtazione API está presente en la ruta de clases, la primavera está en condiciones de validar nuestro modelo.
Para habilitar la validación sólo tendrá que añadir anotaciones a los atributos de nuestro modelo y agregar el siguiente válidos @ a la entrada de los parámetros mediante la aplicación de nuestro controlador:





 @ Controller







 {Public BookController clase





  



 Lista privada Booklist <Book>;



	

  



 pública BookController () {



    



 Lista de libros <Book> = new ArrayList ();



  



 }



	

  



 / / Muestra la creación de la página

 

  



 @ RequestMapping (value = "/ createBook" method = RequestMethod.GET)



  



 public String bienvenida (modelo tipo) {



    



 model.addAttribute ("libro", nuevo libro ());



    



 return "/ libro / createBook";



  



 }



	

  



 / / Comprobar si hay errores de validación y si no, el libro se suma a la lista



  



 @ RequestMapping (value = "/ create", method = RequestMethod.POST)



  



 public String crear (libro Book @ válidos resultado, BindingResult) {



    



 if (result.hasErrors ()) {



      



 return "/ libro / createBook";



    



 }



    



 bookList.add (libro);



    



 return "redirect: GetView";



  



 }



	

  



 / / Mostrar la lista de libros



  



 @ RequestMapping (value = "/ GetView")



  



 Ver public String (modelo de modelos) {



    



 model.addAttribute ("Lista de libros", lista de libros);



    



 return "/ libro / vista";



  



 }







 }



ahora vemos los dos jsp:

1) WEB-INF/jsp/book/createBook.jsp






 <% @ Page language = "java" contentType = "text / html; charset = UTF-8" pageEncoding = "UTF-8"%>







 <% @ Taglib prefix = "forma" uri = "http://www.springframework.org/tags/form"%>







 <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=utf-8">







 <title> Añadir un libro </ title>







 </ Head>







 <body>







 <form:form commandName="book" method="post" action="create">



  



 <fieldset>



    



 <legend> Añadir un libro </ legend>



    



 <p>



      



 <form:label for="nome" path="nome"> Nombre </ form: label> <br/>



      



 <form:input path="nome" /> <form:errors path="nome" />

			

    



 </ P>



    



 <p>

	

      



 <form:label for="autore" Autor path="autore"> </ form: label> <br/>



      



 <form:input path="autore" /> <form:errors path="autore" />



    



 </ P>



    



 <p>



      



 <form:label for="dataDiUscita" Momento de la creación path="dataDiUscita"> </ form: label> <br/>



      



 <form:input path="dataDiUscita" /> <form:errors path="dataDiUscita" />



    



 </ P>



    



 <p>

	

      



 <input type="submit" value="Crea Libro" />



    



 </ P>



  



 </ Fieldset>







 </ Form: form>







 </ Body>







 </ HTML>



2) WEB-INF/jsp/book/view.jsp





 <% @ Page language = "java" contentType = "text / html; charset = UTF-8" pageEncoding = "UTF-8"%>







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









 <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=utf-8">







 <title> Lista de libros </ title>







 </ Head>







 <body>







 <p>



  



 href="createBook"> <a Introduzca otro libro </ a>







 </ P>







 <fieldset>







 Libros <legend> inserta </ ​​legend>







 <c:forEach items="${bookList}" var="book">



  



 Nombre: <c:out value="${book.nome}" /> <br/>



  



 Autor: <c:out value="${book.autore}" /> <br/>



  



 Año: <c:out value="${book.dataDiUscita}" /> <br/>



  



 <hr/>







 </ C: forEach>







 </ Fieldset>









 </ Body>







 </ HTML>



Finalmente podemos ver el contenido de WEB-INF/spring-mvc-servlet.xml:






 <- Activar Anotaciones ->







 <mvc:annotation-driven />









 <- CONTROL ->







 <bean class="it.mrwebmaster.mvc.BookController" scope="session"/>









 <- VISTA AL RESOLVER ->







 <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">



  



 propiedad> name="viewClass" value="org.springframework.web.servlet.view.JstlView" />



  



 propiedad> name="prefix" value="/WEB-INF/jsp/" />



  



 propiedad> name="suffix" value=".jsp" />







 </ Bean>



Primavera Guía Java
E-Learning
Linux (Curso) Linux (Curso)
Guía completa de código abierto del sistema. A partir de 49 €.
PHP (Curso) PHP (Curso)
Ciclo completo para la creación de sitios Web dinámicos. A partir de 49 €.
Ruby y Ruby on Rails (Curso) Ruby y Ruby on Rails (Curso)
Crear aplicaciones de software y la Web con Ruby y RoR. A partir de 39 €.
Enlaces patrocinados