Download HelloSpring

Document related concepts
no text concepts found
Transcript
Alumna: Keren Monge Cid
Materia: Web Application Development
Maestro: Alejandro S. Álvarez Cifuentes
Grupo: 3CM2
3er Departamental
HelloSpring
Objetivo
En esta práctica se mostrará el proceso para construir una simple aplicación web con MVC usando
el framework Spring.
Procedimiento
Se crea un proyecto con la característica de ser Spring Web MVC. Se crean automáticamente las
siguientes documentos: dispatcher-servlet.xml, applicationContext.xml, redirect.jsp, e index.jsp.
Y se ejecuta el proyecto como prueba:
Luego se prosigue a crear las clases HelloService.java en un paquete llamado services, la clase
HelloController.java y la clase Name.java en otro paquete llamado controller.
HelloService.java
package service;
public class HelloService {
public String sayHello(String name) {
return "Hello " + name + "!";
}
}
HelloController.java
package controller;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
import service.HelloService;
public class HelloController extends SimpleFormController {
private HelloService helloService;
public HelloController() {
setCommandClass(Name.class);
setCommandName("name");
setSuccessView("helloView");
setFormView("nameView");
}
@Override
protected ModelAndView onSubmit(Object command) throws Exception {
Name name = (Name)command;
ModelAndView mv = new ModelAndView(getSuccessView());
mv.addObject("helloMessage", helloService.sayHello(name.getValue()));
return mv;
}
public void setHelloService(HelloService helloService) {
this.helloService = helloService;
}
}
Name.java
package controller;
public class Name {
public String value;
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
Se prosigue a crear las vistas, se crean dos documentos JSP.
helloView.jsp :
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Hello</title>
</head>
<body>
<h2>${helloMessage}</h2>
</body>
</html>
nameView.jsp (se le agregan una caja de texto y un botón en un form, el renglón azul muestra
una biblioteca que se le agregó):
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="http://www.springframework.org/tags" prefix="spring" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h2>Enter your name
<spring:nestedPath path="name">
<form action="" method="post">
Name:
<spring:bind path="value">
<input type="text" name="${status.expression}" value="${status.value}">
</spring:bind>
<input type="submit" value="OK">
</form>
</spring:nestedPath></h2>
</body>
</html>
Antes de ejecutar el proyecto se debe especificar en las propiedades del proyecto en el apartado
run el path de helloView.jsp.
Ejecución:
Se introduce un texto en la caja de texto y se oprime el botón.
Resultado al pulsar el botón.