Spring Boot
Oversikt
Spring Boot er et Java-rammeverk som gjør det enklere å bygge frittstående, produksjonsklare applikasjoner. Det tilbyr autokonfigurasjon, innebygde servere og en strukturert tilnærming til å bygge REST-APIer og webapplikasjoner.
Hurtigstart
Opprett repository fra mal
Gå til fanen Tools & Deployment i dashbordet. Klikk på "New Repository", velg Spring Boot-malen fra nedtrekksmenyen, skriv inn et repository-navn og et subdomene, og klikk deretter på "Create Repository".
Klon ditt repository
git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
Konfigurer databasen
Oppdater src/main/resources/application.properties med påloggingsinformasjonen fra dashbordet:
spring.datasource.url=jdbc:mysql://db.<session-domain>:3306/<username>
spring.datasource.username=<username>
spring.datasource.password=<password>
Bygg og kjør
./mvnw spring-boot:run
Serveren kjører som standard på http://localhost:8080.
Push endringene dine
git add .
git commit -m "Initial setup"
git push origin main
Lokal utvikling med Docker
Hvis du ikke har Java installert lokalt, kan du bruke Docker til å bygge og kjøre Spring Boot-applikasjonen din.
Kjøre kommandoer med Docker
# Bygg prosjektet
docker run --rm -v $(pwd):/app -w /app maven:3-eclipse-temurin-21 ./mvnw clean package -DskipTests
# Kjør applikasjonen
docker run --rm -v $(pwd):/app -w /app -p 8080:8080 eclipse-temurin:21 java -jar target/*.jar
Databasekonfigurasjon
NStrim-plattformen gir deg en MySQL/MariaDB-database. Konfigurer application.properties-filen din med riktig påloggingsinformasjon.
Fullstendig konfigurasjon
spring.datasource.url=jdbc:mysql://db.<session-domain>:3306/<username>
spring.datasource.username=<username>
spring.datasource.password=<password>
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
student01). Sjekk påloggingsdelen i dashbordet for nøyaktige verdier.Prosjektstruktur
├── src/
│ └── main/
│ ├── java/com/example/
│ │ ├── Application.java # Spring Boot-inngangspunkt
│ │ ├── controllers/ # REST-controllere
│ │ ├── models/ # JPA-entiteter
│ │ ├── repositories/ # Spring Data Repositories
│ │ └── services/ # Forretningslogikk
│ └── resources/
│ ├── application.properties # Konfigurasjon
│ ├── templates/ # Thymeleaf-maler
│ └── static/ # CSS, JS, bilder
├── pom.xml # Maven-avhengigheter
└── Dockerfile # Docker-konfigurasjon
Vanlige oppgaver
Opprett REST-controller
@RestController
@RequestMapping("/api/users")
public class UserController {
@GetMapping
public List<User> getAll() {
return userRepository.findAll();
}
@PostMapping
public User create(@RequestBody User user) {
return userRepository.save(user);
}
}
Opprett JPA-entitet
@Entity
@Table(name = "users")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private String email;
// getters and setters
}
Opprett repository
public interface UserRepository extends JpaRepository<User, Long> {
Optional<User> findByEmail(String email);
}
Nyttige kommandoer
./mvnw spring-boot:run
Start utviklingsserveren
./mvnw clean package
Bygg prosjektet
./mvnw test
Kjør tester
./mvnw dependency:tree
Vis avhengighetstre
Feilsøking
Communications link failure / Connection refused
Årsak: Databaseverten er feil eller utilgjengelig.
Løsning: Sjekk at spring.datasource.url samsvarer med databaseverten fra dashbordet.
Access denied for user
Årsak: Feil brukernavn eller passord.
Løsning: Kontroller at spring.datasource.username og spring.datasource.password stemmer nøyaktig med dashbordopplysningene.
Port 8080 already in use
Løsning: Legg til server.port=8081 i application.properties, eller avslutt den andre prosessen.
Whitelabel Error Page (404)
Årsak: Ingen controller er knyttet til den forespurte URL-en.
Løsning: Sjekk at controlleren din har riktig @RequestMapping-annotasjon, og at applikasjonen skanner de riktige pakkene.