0% found this document useful (0 votes)
227 views

Spring GetMapping, PostMapping Etc

The document discusses how Spring GetMapping and PostMapping annotations can simplify handling different Spring MVC request mappings. It provides an example of a Spring Boot application that uses these annotations to map GET and POST requests to controller methods returning different responses. The application includes a controller class with GetMapping and PostMapping methods, and a Thymeleaf template for a POST form.

Uploaded by

juan colon
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
227 views

Spring GetMapping, PostMapping Etc

The document discusses how Spring GetMapping and PostMapping annotations can simplify handling different Spring MVC request mappings. It provides an example of a Spring Boot application that uses these annotations to map GET and POST requests to controller methods returning different responses. The application includes a controller class with GetMapping and PostMapping methods, and a Thymeleaf template for a POST form.

Uploaded by

juan colon
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Spring GetMapping ,PostMapping etc

Spring GetMapping es una anotación de Spring Framework que aparece con Spring 4.3 y
nos permite simplificar el manejo de los diferentes métodos de Spring MVC y los
@RequestMappings que a veces se hacen un poco pesados.

A partir de ahora nosotros podemos usar estas anotaciones y simplificar el código. Para ello
vamos a construir un ejemplo utilizando Spring Boot y con las dependencias de MVC y
Thymeleaf.

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


<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.arquitecturajava</groupId>

www.arquitecturajava.com
Spring GetMapping ,PostMapping etc

<artifactId>spring</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>spring</name>
<description>Demo project for Spring Boot</description>

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.8.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncod
ing>
<java.version>1.8</java.version>
</properties>

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-
web</artifactId>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>

www.arquitecturajava.com
Spring GetMapping ,PostMapping etc

</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-
test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-
plugin</artifactId>
</plugin>
</plugins>
</build>

</project>

El primer paso es ver el código de la aplicación principal:

package com.arquitecturajava.spring;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import
org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdap

www.arquitecturajava.com
Spring GetMapping ,PostMapping etc

ter;

@SpringBootApplication
public class Application extends WebMvcConfigurerAdapter {

public static void main(String[] args) {


SpringApplication.run(Application.class, args);
}
}

Una vez tenemos esto construido el siguiente paso es dar de alta un controlador:

package com.arquitecturajava.spring;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HolaController {
@GetMapping("/hola")
@ResponseBody
public String hola() {
return "has hecho una peticion get";
}
@GetMapping("/formulario")
public String hola2() {
return "formulario";

www.arquitecturajava.com
Spring GetMapping ,PostMapping etc

}
@PostMapping("/holapost")
@ResponseBody
public String holaPost() {
return "has hecho una peticion post";
}
}

Este controlador hace uso de las nuevas anotaciones de spring @GetMapping


,@PostMapping etc. Como se puede ver si solicitamos la url “/hola” nos devolverá “has
hecho una peticion get” . Vamos a arrancar la aplicación de SpringBoot y probarlo.

Funciona perfectamente . Una vez que hemos realizado la primera petición solicitamos la
carga del formulario con “/formulario”.

<html>
<body>

<form action="holapost" method="post">


<input type="submit"/>
</form>

www.arquitecturajava.com
Spring GetMapping ,PostMapping etc

</body>
</html>

Esto nos cargará una página html con un botón que realiza una petición post a la url
“holapost”.

Pulsamos el botón y nos mostrará el resultado

Acabamos de usar spring GetMapping y PostMapping para trabajar con Spring MVC y
eliminar el uso de @RequestMapping.

Otros artículos relacionados

1. Spring MVC Flash Attributes


2. Utilizando Spring MVC Bean Validation
3. Spring MVC Configuración (I)
4. Spring MVC

www.arquitecturajava.com

You might also like