Oversigt

Spring Boot er et Java-framework, der gør det nemt at oprette selvstændige applikationer i produktionskvalitet. Det leverer auto-konfiguration, indlejrede servere og en meningsdannende tilgang til at bygge REST API'er og webapplikationer.

Før du begynder
Sørg for at have dit dashboard åbent - du skal bruge de Git-loginoplysninger, der vises der. Denne skabelon inkluderer Spring Web, Spring Data JPA, MySQL-driver og Thymeleaf-skabeloner.

Kom godt i gang

1

Opret repository fra skabelon

Gå til fanen Tools & Deployment på dit dashboard. Klik på "New Repository", vælg Spring Boot-skabelonen i dropdown-menuen, indtast et repository-navn og et subdomæne, og klik på "Create Repository".

2

Klon dit repository

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

Konfigurer database

Opdater src/main/resources/application.properties med dine dashboard-loginoplysninger:

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

Build og kør

./mvnw spring-boot:run

Serveren kører som standard på http://localhost:8080.

5

Push dine ændringer

git add .
git commit -m "Initial setup"
git push origin main
Hver push til Git udruller automatisk din applikation. Tjek din Module Work URL på dashboardet for at se din live-side.

Lokal udvikling med Docker

Hvis du ikke har Java installeret lokalt, kan du bruge Docker til at bygge og køre din Spring Boot-applikation.

Hvad er Docker?
Docker opretter isolerede "containere" med al den software, du har brug for (Java, Maven), uden at installere dem på din computer.

Kør kommandoer 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

Databasekonfiguration

NStrim-platformen stiller en MySQL/MariaDB-database til rådighed. Konfigurer din application.properties-fil med de korrekte loginoplysninger.

Fuld 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
Vigtigt
Dit databasenavn og brugernavn er typisk det samme som dit dashboard-brugernavn (f.eks. student01). Tjek dashboardets loginoplysningssektion for præcise værdier.

Projektstruktur

├── src/
│   └── main/
│       ├── java/com/example/
│       │   ├── Application.java          # Spring Boot entry point
│       │   ├── controllers/              # REST controllers
│       │   ├── models/                   # JPA-entiteter
│       │   ├── repositories/             # Spring Data repositories
│       │   └── services/                 # Forretningslogik
│       └── resources/
│           ├── application.properties    # Konfiguration
│           ├── templates/                # Thymeleaf-skabeloner
│           └── static/                   # CSS, JS, billeder
├── pom.xml                               # Maven-afhængigheder
└── Dockerfile                            # Docker-konfiguration
        

Almindelige opgaver

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

Opret 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
}

Opret et repository

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

Nyttige kommandoer

./mvnw spring-boot:run Start udviklingsserver
./mvnw clean package Build projektet
./mvnw test Kør tests
./mvnw dependency:tree Vis afhængighedstræ

Fejlfinding

Communications link failure / Connection refused

Årsag: Database-host er forkert eller utilgængelig.

Løsning: Tjek at spring.datasource.url matcher database-hosten fra dit dashboard.

Access denied for user

Årsag: Forkert brugernavn eller adgangskode.

Løsning: Tjek at spring.datasource.username og spring.datasource.password matcher dine dashboard-loginoplysninger præcis.

Port 8080 er allerede i brug

Løsning: Tilføj server.port=8081 til application.properties eller stop den anden proces.

Whitelabel Error Page (404)

Årsag: Ingen controller er mappet til den ønskede URL.

Løsning: Sørg for, at din controller har den korrekte @RequestMapping-annotation, og at applikationen scanner de rigtige pakker.

Udrulnings-workflow

Kodeændring git push mvn package Live!
For mere information, besøg den officielle Spring Boot-dokumentation.