Oversigt

Java Vanilla er et almindeligt Java-projekt, der kun bruger standardbiblioteket og en letvægts HTTP-server. Det giver et rent udgangspunkt for at bygge webapplikationer og REST API'er uden framework-overhead.

Før du begynder
Sørg for at have dit dashboard åbent - du skal bruge de Git-loginoplysninger, der vises der. Denne skabelon inkluderer en letvægts HTTP-server, JDBC til databaseadgang og Gson til JSON-håndtering.

Kom godt i gang

1

Opret repository fra skabelon

Gå til fanen Tools & Deployment på dit dashboard. Klik på "New Repository", vælg Java Vanilla-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

Build projektet

mvn clean package
4

Kør applikationen

java -jar target/app.jar

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 eller Maven installeret lokalt, kan du bruge Docker til at bygge og køre dit projekt.

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 mvn clean package

# Run the application
docker run --rm -v $(pwd):/app -w /app -p 8080:8080 eclipse-temurin:21 java -jar target/app.jar

Projektstruktur

├── src/
│   └── main/
│       └── java/
│           └── com/example/
│               ├── App.java              # Entry point & HTTP-server
│               ├── handlers/             # Request-håndterere
│               └── models/               # Datamodeller
├── pom.xml                               # Maven-afhængigheder
└── Dockerfile                            # Docker-konfiguration
        

Almindelige opgaver

Opret en HTTP-handler

import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import java.io.IOException;
import java.io.OutputStream;

public class UsersHandler implements HttpHandler {
    @Override
    public void handle(HttpExchange exchange) throws IOException {
        String response = "{\"message\": \"Hello from Java!\"}";
        exchange.getResponseHeaders().set("Content-Type", "application/json");
        exchange.sendResponseHeaders(200, response.length());
        try (OutputStream os = exchange.getResponseBody()) {
            os.write(response.getBytes());
        }
    }
}

Databaseforbindelse med JDBC

import java.sql.*;

String url = "jdbc:mysql://db.<session-domain>:3306/<username>";
Connection conn = DriverManager.getConnection(url, "username", "password");

PreparedStatement stmt = conn.prepareStatement("SELECT * FROM users WHERE id = ?");
stmt.setInt(1, userId);
ResultSet rs = stmt.executeQuery();

Nyttige kommandoer

mvn clean package Build projektet
java -jar target/app.jar Kør applikationen
mvn dependency:tree Vis afhængighedstræ

Fejlfinding

java.sql.SQLException: Access denied

Løsning: Tjek at din JDBC-forbindelses-URL, brugernavn og adgangskode matcher loginoplysningerne fra dit dashboard.

Port 8080 er allerede i brug

Løsning: Skift porten i din App.java eller stop den anden proces, der bruger port 8080.

ClassNotFoundException for JDBC-driver

Løsning: Sørg for, at MySQL JDBC-driveren er inkluderet i dine pom.xml-afhængigheder, og kør mvn clean package igen.

Udrulnings-workflow

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