El fichero pom.xml consta de:
- La declaración de la herencia por parte de spring boot parent. Con esto incluimos una configuración base del proyecto. Podremos sobreescribir o extender estos valores por defecto a través de propiedades del pom.xml o propiedades incluidas en el fichero application.properties
- La dependencia de spring-boot-starter-web que indicará que es una aplicación web y que podemos desplegarla en un servidor web (por defecto tomcat 8 en estas versiones).
- A la hora de desarrollar yo suelo incluir siempre la librería de spring-boot: spring-boot-devtools, que nos aporta más información en consola.
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.6.RELEASE</version> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.7</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
Para crear el sevicio web REST deberemos crear una clase de tipo 'RestController'. Con el uso de dicha anotación, estaremos diciendo que aquello devuelto por el método será encapsulado en el 'body' de la respuesta y por defecto con tipo 'application/json'. Sería lo mismo que añadir la anotación '@Controller' a nivel de la clase y luego la anotación '@ResponseBody' en cada método.
La anotación '@GetMapping' indicará que la url que indicamos debe ser invocada con un método 'GET' y con '@RequestParam' indicamos que en dicha llamada vendrá un parámetro por la request denominado 'nombre'.
@RestController public class SaludoRestController { @GetMapping("/saludo") public Saludo Saludo(@RequestParam(value = "nombre", defaultValue = "Mundo") final String nombre) { return new Saludo("Hola", nombre); } }
Ya solo nos queda ejecutar la clase 'Aplicación' (aquella que contiene la anotación '@SpringBootApplication') y hacer la siguiente llamada en el navegador: http://localhost:8080/saludo?nombre=Ender
La guía de este mismo ejemplo la podeis encontrar aquí y mí código en Github aquí.
No hay comentarios:
Publicar un comentario