Spring Boot

Teljes telepítési útmutató: Spring Boot az NStrim platformon

Áttekintés

A Spring Boot egy Java keretrendszer, amely megkönnyíti önálló, termelésre kész alkalmazások létrehozását. Automatikus konfigurálást, beágyazott szervereket és véleményes megközelítést biztosít REST API-k és webalkalmazások építéséhez.

Mielőtt elkezdenéd
Győződj meg róla, hogy a vezérlőpultod nyitva van - szükséged lesz az ott megjelenített Git hitelesítő adatokra. Ez a sablon tartalmazza a Spring Web, Spring Data JPA, MySQL driver és Thymeleaf sablonmotor csomagokat.

Gyorsindítás

1

Repository létrehozása sablonból

A vezérlőpultodon menj a Tools & Deployment fülre. Kattints a "New Repository" gombra, válaszd ki a Spring Boot sablont a legördülő menüből, add meg a repository nevét és az aldomaint, majd kattints a "Create Repository" gombra.

2

Repository klónozása

git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
3

Adatbázis konfigurálása

Frissítsd az src/main/resources/application.properties fájlt a vezérlőpulton található hitelesítő adatokkal:

spring.datasource.url=jdbc:mysql://db.<session-domain>:3306/<username>
spring.datasource.username=<username>
spring.datasource.password=<password>
4

Build és futtatás

./mvnw spring-boot:run

A szerver alapértelmezetten a http://localhost:8080 címen fut.

5

Változtatások feltöltése

git add .
git commit -m "Initial setup"
git push origin main
Minden Git push automatikusan telepíti az alkalmazásodat. Ellenőrizd a Modul munka URL-t a vezérlőpultodon az élő oldal megtekintéséhez.

Helyi fejlesztés Dockerrel

Ha nincs Java telepítve a gépedre, használhatod a Dockert a Spring Boot alkalmazásod buildeléséhez és futtatásához.

Mi az a Docker?
A Docker izolált konténereket hoz létre az összes szükséges szoftverrel (Java, Maven) anélkül, hogy telepítened kellene őket a számítógépedre.

Parancsok futtatása Dockerrel

# Projekt buildelése
docker run --rm -v $(pwd):/app -w /app maven:3-eclipse-temurin-21 ./mvnw clean package -DskipTests

# Alkalmazás futtatása
docker run --rm -v $(pwd):/app -w /app -p 8080:8080 eclipse-temurin:21 java -jar target/*.jar

Adatbázis konfiguráció

Az NStrim platform MySQL/MariaDB adatbázist biztosít számodra. Konfiguráld az application.properties fájlt a megfelelő hitelesítő adatokkal.

Teljes konfiguráció

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
Fontos
Az adatbázis neve és felhasználóneve általában megegyezik a vezérlőpulton megjelenő felhasználóneveddel (pl. student01). Ellenőrizd a vezérlőpult hitelesítő adatok részét a pontos értékekért.

Projekt struktúra

├── src/
│   └── main/
│       ├── java/com/example/
│       │   ├── Application.java          # Spring Boot belépési pont
│       │   ├── controllers/              # REST controllerek
│       │   ├── models/                   # JPA entitások
│       │   ├── repositories/             # Spring Data repository-k
│       │   └── services/                 # Üzleti logika
│       └── resources/
│           ├── application.properties    # Konfiguráció
│           ├── templates/                # Thymeleaf sablonok
│           └── static/                   # CSS, JS, képek
├── pom.xml                               # Maven függőségek
└── Dockerfile                            # Docker konfig
        

Gyakori feladatok

REST Controller létrehozása

@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);
    }
}

JPA Entity létrehozása

@Entity
@Table(name = "users")
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String name;
    private String email;

    // getters and setters
}

Repository létrehozása

public interface UserRepository extends JpaRepository<User, Long> {
    Optional<User> findByEmail(String email);
}

Hasznos parancsok

./mvnw spring-boot:run Fejlesztői szerver indítása
./mvnw clean package Projekt buildelése
./mvnw test Tesztek futtatása
./mvnw dependency:tree Függőségi fa megjelenítése

Hibaelhárítás

Communications link failure / Connection refused

Ok: Az adatbázis host helytelen vagy nem elérhető.

Megoldás: Ellenőrizd, hogy a spring.datasource.url megegyezik-e a vezérlőpulton megjelenő adatbázis hosttal.

Access denied for user

Ok: Hibás felhasználónév vagy jelszó.

Megoldás: Ellenőrizd, hogy a spring.datasource.username és spring.datasource.password pontosan megegyezik-e a vezérlőpulton megjelenő hitelesítő adatokkal.

Port 8080 already in use

Megoldás: Add hozzá a server.port=8081 sort az application.properties fájlhoz, vagy állítsd le a másik folyamatot.

Whitelabel Error Page (404)

Ok: Nincs controller hozzárendelve a kért URL-hez.

Megoldás: Győződj meg róla, hogy a controllered rendelkezik a megfelelő @RequestMapping annotációval, és az alkalmazás a megfelelő csomagokat vizsgálja.

Telepítési munkafolyamat

Kód módosítás git push mvn package Éles!
További információért látogasd meg a hivatalos Spring Boot dokumentációt.