Ö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.

Innan du börjar
Se till att din dashboard är öppen – du kommer att behöva Git-uppgifterna som visas där. Den här mallen innehåller Spring Web, Spring Data JPA, MySQL-drivrutin och Thymeleaf-mallar.

Kom igång

1

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".

2

Klona ditt repository

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

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>
4

Bygg och kör

./mvnw spring-boot:run

Servern körs som standard på http://localhost:8080.

5

Pusha dina ändringar

git add .
git commit -m "Initial setup"
git push origin main
Varje push till Git distribuerar din applikation automatiskt. Kontrollera din Module Work URL i dashboarden för att se din live-sajt.

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.

Vad är Docker?
Docker skapar isolerade "containrar" med all programvara du behöver (Java, Maven) utan att installera dem på din dator.

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
Viktigt
Ditt databasnamn och användarnamn är vanligtvis samma som ditt användarnamn i dashboarden (t.ex. 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.

Distributionsflöde

Kodändring git push mvn package Live!
För mer information, besök den officiella Spring Boot-dokumentationen.