Java Vanilla

Teljes telepítési útmutató: Java Vanilla az NStrim platformon

Áttekintés

A Java Vanilla egy egyszerű Java projekt, amely csak a standard könyvtárat és egy könnyű HTTP szervert használ. Tiszta kiindulópontot biztosít webalkalmazások és REST API-k építéséhez keretrendszer nélkül.

Mielőtt elkezdenéd
Győződj meg róla, hogy a vezérlőpultod nyitva van - szükséged lesz az ott megjelenített Git hitelesítő adatokra. Ez a sablon tartalmaz egy könnyű HTTP szervert, JDBC-t adatbázis-hozzáféréshez és Gson-t JSON kezeléshez.

Gyorsindítás

1

Repository létrehozása sablonból

A vezérlőpultodon menj a Tools & Deployment fülre. Kattints a "New Repository" gombra, válaszd ki a Java Vanilla sablont a legördülő menüből, add meg a repository nevét és az aldomaint, majd kattints a "Create Repository" gombra.

2

Repository klónozása

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

Projekt buildelése

mvn clean package
4

Alkalmazás futtatása

java -jar target/app.jar

A szerver alapértelmezetten a http://localhost:8080 címen fut.

5

Változtatások feltöltése

git add .
git commit -m "Initial setup"
git push origin main
Minden Git push automatikusan telepíti az alkalmazásodat. Ellenőrizd a Modul munka URL-t a vezérlőpultodon az élő oldal megtekintéséhez.

Helyi fejlesztés Dockerrel

Ha nincs Java vagy Maven telepítve a gépedre, használhatod a Dockert a projekt buildeléséhez és futtatásához.

Mi az a Docker?
A Docker izolált konténereket hoz létre az összes szükséges szoftverrel (Java, Maven) anélkül, hogy telepítened kellene őket a számítógépedre.

Parancsok futtatása Dockerrel

# Projekt buildelése
docker run --rm -v $(pwd):/app -w /app maven:3-eclipse-temurin-21 mvn clean package

# Alkalmazás futtatása
docker run --rm -v $(pwd):/app -w /app -p 8080:8080 eclipse-temurin:21 java -jar target/app.jar

Projekt struktúra

├── src/
│   └── main/
│       └── java/
│           └── com/example/
│               ├── App.java              # Belépési pont és HTTP szerver
│               ├── handlers/             # Kérés kezelők
│               └── models/               # Adat modellek
├── pom.xml                               # Maven függőségek
└── Dockerfile                            # Docker konfig
        

Gyakori feladatok

HTTP Handler létrehozása

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

Adatbázis kapcsolat JDBC-vel

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

Hasznos parancsok

mvn clean package Projekt buildelése
java -jar target/app.jar Alkalmazás futtatása
mvn dependency:tree Függőségi fa megjelenítése

Hibaelhárítás

java.sql.SQLException: Access denied

Megoldás: Ellenőrizd, hogy a JDBC kapcsolati URL, felhasználónév és jelszó megegyezik-e a vezérlőpulton megjelenő hitelesítő adatokkal.

Port 8080 already in use

Megoldás: Változtasd meg a portot az App.java fájlban, vagy állítsd le a 8080-as portot használó másik folyamatot.

ClassNotFoundException for JDBC driver

Megoldás: Győződj meg róla, hogy a MySQL JDBC driver szerepel a pom.xml függőségei között, és futtasd újra az mvn clean package parancsot.

Telepítési munkafolyamat

Kód módosítás git push mvn package Éles!
További információért látogasd meg a hivatalos Java dokumentációt.