Oversikt

Java Vanilla er et enkelt Java-prosjekt som kun bruker standardbiblioteket og en lettvekts HTTP-server. Det gir et rent utgangspunkt for å bygge webapplikasjoner og REST-APIer uten ekstra rammeverk.

Før du begynner
Sørg for at dashbordet ditt er åpent - du trenger Git-påloggingsinformasjonen som vises der. Denne malen inneholder en lettvekts HTTP-server, JDBC for databasetilgang og Gson for JSON-håndtering.

Hurtigstart

1

Opprett repository fra mal

Gå til fanen Tools & Deployment i dashbordet. Klikk på "New Repository", velg Java Vanilla-malen fra nedtrekksmenyen, skriv inn et repository-navn og et subdomene, og klikk deretter på "Create Repository".

2

Klon ditt repository

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

Bygg prosjektet

mvn clean package
4

Kjør applikasjonen

java -jar target/app.jar

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

5

Push endringene dine

git add .
git commit -m "Initial setup"
git push origin main
Hver push til Git distribuerer applikasjonen din automatisk. Sjekk Module Work URL i dashbordet for å se den kjørende siden din.

Lokal utvikling med Docker

Hvis du ikke har Java eller Maven installert lokalt, kan du bruke Docker til å bygge og kjøre prosjektet ditt.

Hva er Docker?
Docker oppretter isolerte "containere" med all programvaren du trenger (Java, Maven) uten å installere den på datamaskinen din.

Kjøre kommandoer med Docker

# Bygg prosjektet
docker run --rm -v $(pwd):/app -w /app maven:3-eclipse-temurin-21 mvn clean package

# Kjør applikasjonen
docker run --rm -v $(pwd):/app -w /app -p 8080:8080 eclipse-temurin:21 java -jar target/app.jar

Prosjektstruktur

├── src/
│   └── main/
│       └── java/
│           └── com/example/
│               ├── App.java              # Inngangspunkt og HTTP-server
│               ├── handlers/             # Request-håndterere
│               └── models/               # Datamodeller
├── pom.xml                               # Maven-avhengigheter
└── Dockerfile                            # Docker-konfigurasjon
        

Vanlige oppgaver

Opprett 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());
        }
    }
}

Databasetilkobling 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 Bygg prosjektet
java -jar target/app.jar Kjør applikasjonen
mvn dependency:tree Vis avhengighetstre

Feilsøking

java.sql.SQLException: Access denied

Løsning: Sjekk at JDBC-tilkoblings-URL, brukernavn og passord samsvarer med påloggingsinformasjonen fra dashbordet.

Port 8080 already in use

Løsning: Endre porten i App.java, eller avslutt den andre prosessen som bruker port 8080.

ClassNotFoundException for JDBC driver

Løsning: Pass på at MySQL-JDBC-driveren er inkludert i avhengighetene i pom.xml, og kjør mvn clean package på nytt.

Distribusjons-arbeidsflyt

Kodeendring git push mvn package Live!
For mer informasjon, besøk den offisielle Java-dokumentasjonen.