Spring Boot
Ülevaade
Spring Boot on Java raamistik, mis muudab eraldiseisvate, tootmisvalmis rakenduste loomise lihtsaks. See pakub automaatset seadistamist, manustatud servereid ja eelistatud lähenemist REST API-de ja veebirakenduste ehitamisele.
Kiirjuhend
Loo repositoorium mallist
Mine oma töölaual vahekaardile Tools & Deployment. Klõpsa nuppu "New Repository", vali rippmenüüst Spring Boot mall, sisesta repositooriumi nimi ja alamdomeen ning klõpsa "Create Repository".
Klooni oma repositoorium
git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
Seadista andmebaas
Uuenda src/main/resources/application.properties oma töölaua sisselogimisandmetega:
spring.datasource.url=jdbc:mysql://db.<session-domain>:3306/<username>
spring.datasource.username=<username>
spring.datasource.password=<password>
Ehita ja käivita
./mvnw spring-boot:run
Server töötab vaikimisi aadressil http://localhost:8080.
Saada oma muudatused üles
git add .
git commit -m "Initial setup"
git push origin main
Kohalik arendus Dockeriga
Kui sul ei ole Javat kohalikult paigaldatud, saad Spring Boot rakenduse ehitamiseks ja käivitamiseks kasutada Dockerit.
Käskude käivitamine Dockeriga
# Ehita projekt
docker run --rm -v $(pwd):/app -w /app maven:3-eclipse-temurin-21 ./mvnw clean package -DskipTests
# Käivita rakendus
docker run --rm -v $(pwd):/app -w /app -p 8080:8080 eclipse-temurin:21 java -jar target/*.jar
Andmebaasi seadistamine
NStrim-platvorm pakub sulle MySQL/MariaDB andmebaasi. Seadista oma application.properties fail õigete sisselogimisandmetega.
Täielik seadistus
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). Täpseid väärtusi kontrolli oma töölaua sisselogimisandmete sektsioonist.Projekti struktuur
├── src/
│ └── main/
│ ├── java/com/example/
│ │ ├── Application.java # Spring Booti sisendpunkt
│ │ ├── controllers/ # REST kontrollerid
│ │ ├── models/ # JPA olemid
│ │ ├── repositories/ # Spring Data repositooriumid
│ │ └── services/ # Äriloogika
│ └── resources/
│ ├── application.properties # Seadistus
│ ├── templates/ # Thymeleaf mallid
│ └── static/ # CSS, JS, pildid
├── pom.xml # Maven sõltuvused
└── Dockerfile # Dockeri seadistus
Levinud ülesanded
REST kontrolleri loomine
@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 olemi loomine
@Entity
@Table(name = "users")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private String email;
// getterid ja setterid
}
Repositooriumi loomine
public interface UserRepository extends JpaRepository<User, Long> {
Optional<User> findByEmail(String email);
}
Kasulikud käsud
./mvnw spring-boot:run
Käivita arendusserver
./mvnw clean package
Ehita projekt
./mvnw test
Käivita testid
./mvnw dependency:tree
Kuva sõltuvuste puu
Tõrkeotsing
Communications link failure / Connection refused
Põhjus: Andmebaasi host on vale või pole kättesaadav.
Lahendus: Kontrolli, et spring.datasource.url vastaks töölaualt saadud andmebaasi hostile.
Access denied for user
Põhjus: Vale kasutajanimi või parool.
Lahendus: Kontrolli, et spring.datasource.username ja spring.datasource.password vastaksid täpselt sinu töölaua sisselogimisandmetele.
Port 8080 on juba kasutusel
Lahendus: Lisa server.port=8081 faili application.properties või peata teine protsess.
Whitelabel Error Page (404)
Põhjus: Soovitud URL-ile pole ühtegi kontrollerit määratud.
Lahendus: Veendu, et sinu kontrolleril on õige @RequestMapping annotatsioon ja rakendus skaneerib õigeid pakette.