En aquest tema, aprendrem a crear la nostra primera aplicació Spring Boot des de zero. Aquest procés inclou la configuració inicial del projecte, la creació d'un controlador bàsic i l'execució de l'aplicació.
- Configuració inicial del projecte
1.1. Utilitzant Spring Initializr
Spring Initializr és una eina en línia que ens permet generar un projecte Spring Boot amb les dependències necessàries. Segueix aquests passos per crear el teu projecte:
- Accedeix a Spring Initializr: Ves a start.spring.io.
- Configura el projecte:
- Project: Maven Project
- Language: Java
- Spring Boot: 2.5.4 (o l'última versió disponible)
- Project Metadata:
- Group: com.exemple
- Artifact: primera-aplicacio
- Name: primera-aplicacio
- Description: La meva primera aplicació Spring Boot
- Package name: com.exemple.primeraaplicacio
- Packaging: Jar
- Java: 11 (o la versió que tinguis instal·lada)
- Afegeix dependències: Afegeix les següents dependències:
- Spring Web
- Genera el projecte: Fes clic a "Generate" per descarregar un fitxer ZIP amb el projecte.
1.2. Importa el projecte a l'IDE
- Descomprimeix el fitxer ZIP: Descomprimeix el fitxer descarregat en una carpeta de la teva elecció.
- Importa el projecte a l'IDE: Obre el teu IDE (Eclipse, IntelliJ IDEA, VS Code, etc.) i importa el projecte com un projecte Maven existent.
- Entenent l'estructura del projecte
Un cop importat el projecte, veuràs una estructura de carpetes similar a aquesta:
primera-aplicacio ├── src │ ├── main │ │ ├── java │ │ │ └── com │ │ │ └── exemple │ │ │ └── primeraaplicacio │ │ │ └── PrimeraAplicacioApplication.java │ │ └── resources │ │ └── application.properties │ └── test │ └── java │ └── com │ └── exemple │ └── primeraaplicacio │ └── PrimeraAplicacioApplicationTests.java ├── mvnw ├── mvnw.cmd ├── pom.xml └── README.md
Fitxers i carpetes clau
- PrimeraAplicacioApplication.java: El punt d'entrada de l'aplicació.
- application.properties: Fitxer de configuració de l'aplicació.
- pom.xml: Fitxer de configuració de Maven que defineix les dependències del projecte.
- Creant un controlador bàsic
Ara crearem un controlador bàsic que respongui a les sol·licituds HTTP.
3.1. Crear el controlador
- Crea una nova classe: Crea una nova classe anomenada
SalutacioControlador
dins del paquetcom.exemple.primeraaplicacio
.
package com.exemple.primeraaplicacio; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class SalutacioControlador { @GetMapping("/salutacio") public String salutacio() { return "Hola, benvingut a la teva primera aplicació Spring Boot!"; } }
Explicació del codi
- @RestController: Aquesta anotació indica que la classe és un controlador REST.
- @GetMapping("/salutacio"): Aquesta anotació defineix un mètode que gestionarà les sol·licituds GET a l'URL
/salutacio
. - salutacio(): Aquest mètode retorna un missatge de salutació.
- Executant l'aplicació
4.1. Executar des de l'IDE
- Executa la classe principal: Fes clic dret a la classe
PrimeraAplicacioApplication
i selecciona "Run As" -> "Java Application".
4.2. Verifica el funcionament
- Obre el navegador: Ves al teu navegador i accedeix a
http://localhost:8080/salutacio
. - Verifica la resposta: Hauries de veure el missatge "Hola, benvingut a la teva primera aplicació Spring Boot!".
- Exercici pràctic
Exercici
Crea un nou controlador que respongui a l'URL /despedida
amb el missatge "Adéu, fins aviat!".
Solució
package com.exemple.primeraaplicacio; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class DespedidaControlador { @GetMapping("/despedida") public String despedida() { return "Adéu, fins aviat!"; } }
Conclusió
En aquest tema, hem après a crear la nostra primera aplicació Spring Boot, incloent la configuració inicial del projecte, la creació d'un controlador bàsic i l'execució de l'aplicació. Ara estem preparats per aprofundir en els conceptes bàsics de Spring Boot en els següents mòduls.
Curs de Spring Boot
Mòdul 1: Introducció a Spring Boot
- Què és Spring Boot?
- Configuració del teu entorn de desenvolupament
- Creant la teva primera aplicació Spring Boot
- Entenent l'estructura del projecte Spring Boot
Mòdul 2: Conceptes bàsics de Spring Boot
- Anotacions de Spring Boot
- Injecció de dependències a Spring Boot
- Configuració de Spring Boot
- Propietats de Spring Boot
Mòdul 3: Construint serveis web RESTful
- Introducció als serveis web RESTful
- Creant controladors REST
- Gestionant mètodes HTTP
- Gestió d'excepcions en REST
Mòdul 4: Accés a dades amb Spring Boot
- Introducció a Spring Data JPA
- Configuració de fonts de dades
- Creant entitats JPA
- Utilitzant repositoris de Spring Data
- Mètodes de consulta a Spring Data JPA
Mòdul 5: Seguretat a Spring Boot
- Introducció a Spring Security
- Configuració de Spring Security
- Autenticació i autorització d'usuaris
- Implementant autenticació JWT
Mòdul 6: Proves a Spring Boot
Mòdul 7: Funcions avançades de Spring Boot
Mòdul 8: Desplegant aplicacions Spring Boot
Mòdul 9: Rendiment i monitorització
- Optimització del rendiment
- Monitorització amb Spring Boot Actuator
- Utilitzant Prometheus i Grafana
- Gestió de registres i logs