Spring Boot MVC
Spring Boot MVC
Definiendo un @Controller
La anotación @Controller indica que una clase particular cumple la
función de un controlador.
Colocar el
resultado en un
Obtener los
Disparar la lógica ámbito accesible
parámetros
de negocio. a la vista y
HTTP (si los hay).
cederle el
control a este.
Pero… ¿Cómo hacemos para que, dada una petición en
particular, un controlador determinado se encargue de
entender este recurso y llamar a la vista correspondiente?
@Controller
@RequestMapping("/hello")
public class HelloController {
@RequestMapping(method = RequestMethod.GET)
public String printHello(ModelMap model) {
model.addAttribute("message", "Hello Spring MVC
Framework!");
return "hello";
}
}
{ Código }
Esta anotación define la
clase HelloController
como un controlador de
Spring MVC. Ruta que podemos introducir en
el navegador. Por ejemplo:
http:localhost/hello
@Controller
@RequestMapping("/hello")
public class HelloController {
@RequestMapping(method = RequestMethod.GET)
public String printHello(ModelMap model) {
model.addAttribute("message", "Hello Spring MVC Framework!");
return "hello";
}
Nombre de la vista, es decir, hello.html
} (el sufijo por defecto es html). Información que enviamos a la plantilla, a la vista.
Usando
@Controller
@RequestMapping(‘’/hello’’)
@RequestMapping("/hello") asociamos una URL a la clase
public class HelloController { Hello controlador, es decir,
@RequestMapping(method = RequestMethod.GET) indicamos que todos los
public String printHello(ModelMap model) { métodos de manejo en este
controlador son relativos a la
model.addAttribute("message", "Hello Spring MVC Framework!");
ruta: ‘’/hello’’.
return "hello"; http://localhost:8080/hell
} o
}
@Controller
@RequestMapping("/hello") Para que Spring sepa qué
public class HelloController { método del controlador debe
@RequestMapping(method = RequestMethod.GET) procesar la petición HTTP,
public String printHello(ModelMap model) { podemos especificar qué
método HTTP asociaremos al
model.addAttribute("message", "Hello Spring MVC Framework!");
método Java.
return "hello";
}
}
Entonces, si hacemos una llamada a la misma URL con POST produciría un
error HTTP de tipo 404 porque no hay nada asociado a dicha petición.
Otra forma:
@Controller
public class HelloController {
@RequestMapping(value = "/hello", method = RequestMethod.GET)
public String printHello(Model model) {
model.addAttribute("message","Hello Spring MVC
Framework!");
return "hello";
}
}
Parámetros
Los parámetros de URL contienen una clave y un valor separados por un
signo igual (=) y unidos por un signo de unión (&).
El primer parámetro siempre se ubica después del signo de interrogación
en una URL. Por ejemplo:
http://example.com/listaOfertas?mes=1&user=google
Obtener parámetros HTTP
@Controller
public class ListaOfertasController {
@Controller
public class HelloController {
@GetMapping ("/hello")
public String printHello(Model model) {
model.addAttribute("message", "Hello Spring MVC Framework!");
return "hello";
}
@PostMapping("/guardar")
public String guardarProducto(@RequestBody Employee employee) {
return "has hecho una peticion post";
}
}