Spring Boot
Översikt
Spring Boot är ett Java-ramverk som gör det enkelt att skapa fristående applikationer av produktionskvalitet. Det erbjuder autokonfiguration, inbäddade servrar och ett strukturerat sätt att bygga REST-API:er och webbapplikationer.
Kom igång
Skapa repository från mall
Gå till fliken Tools & Deployment i din dashboard. Klicka på knappen "New Repository", välj Spring Boot-mallen från rullgardinsmenyn, ange ett repository-namn och en subdomän och klicka sedan på "Create Repository".
Klona ditt repository
git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
Konfigurera databasen
Uppdatera src/main/resources/application.properties med dina inloggningsuppgifter från dashboarden:
spring.datasource.url=jdbc:mysql://db.<session-domain>:3306/<username>
spring.datasource.username=<username>
spring.datasource.password=<password>
Bygg och kör
./mvnw spring-boot:run
Servern körs som standard på http://localhost:8080.
Pusha dina ändringar
git add .
git commit -m "Initial setup"
git push origin main
Lokal utveckling med Docker
Om du inte har Java installerat lokalt kan du använda Docker för att bygga och köra din Spring Boot-applikation.
Köra kommandon med Docker
# Build the project
docker run --rm -v $(pwd):/app -w /app maven:3-eclipse-temurin-21 ./mvnw clean package -DskipTests
# Run the application
docker run --rm -v $(pwd):/app -w /app -p 8080:8080 eclipse-temurin:21 java -jar target/*.jar
Databaskonfiguration
NStrim-plattformen tillhandahåller en MySQL/MariaDB-databas. Konfigurera din application.properties-fil med rätt inloggningsuppgifter.
Fullständig konfiguration
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). Kontrollera avsnittet med inloggningsuppgifter i din dashboard för exakta värden.Projektstruktur
├── src/
│ └── main/
│ ├── java/com/example/
│ │ ├── Application.java # Spring Boot-ingångspunkt
│ │ ├── controllers/ # REST-controllers
│ │ ├── models/ # JPA-entiteter
│ │ ├── repositories/ # Spring Data-repositories
│ │ └── services/ # Affärslogik
│ └── resources/
│ ├── application.properties # Konfiguration
│ ├── templates/ # Thymeleaf-mallar
│ └── static/ # CSS, JS, bilder
├── pom.xml # Maven-beroenden
└── Dockerfile # Docker-konfiguration
Vanliga uppgifter
Skapa en 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);
}
}
Skapa en 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
}
Skapa ett repository
public interface UserRepository extends JpaRepository<User, Long> {
Optional<User> findByEmail(String email);
}
Användbara kommandon
./mvnw spring-boot:run
Starta utvecklingsserver
./mvnw clean package
Bygg projektet
./mvnw test
Kör tester
./mvnw dependency:tree
Visa beroendeträdet
Felsökning
Communications link failure / Connection refused
Orsak: Databasvärden är felaktig eller inte tillgänglig.
Lösning: Kontrollera att spring.datasource.url matchar databasvärden från din dashboard.
Access denied for user
Orsak: Fel användarnamn eller lösenord.
Lösning: Dubbelkolla att spring.datasource.username och spring.datasource.password matchar dina inloggningsuppgifter från dashboarden exakt.
Port 8080 already in use
Lösning: Lägg till server.port=8081 i application.properties eller stoppa den andra processen.
Whitelabel Error Page (404)
Orsak: Ingen controller är mappad till den begärda URL:en.
Lösning: Säkerställ att din controller har korrekt @RequestMapping-annotation och att applikationen scannar rätt paket.