Java Vanilla

Pilnīga izvietošanas rokasgrāmata: Java Vanilla NStrim platformā

Pārskats

Java Vanilla ir vienkāršs Java projekts, kas izmanto tikai standarta bibliotēku un vieglu HTTP serveri. Tas nodrošina tīru sākumpunktu tīmekļa lietojumprogrammu un REST API veidošanai bez ietvara papildu slodzes.

Pirms sākat
Pārliecinieties, ka jūsu vadības panelis ir atvērts - jums būs nepieciešami tur redzamie Git piekļuves dati. Šī veidne ietver vieglu HTTP serveri, JDBC datubāzes piekļuvei un Gson JSON apstrādei.

Ātrais starts

1

Izveidot repozitoriju no veidnes

Savā vadības panelī atveriet cilni Tools & Deployment. Noklikšķiniet uz pogas "New Repository", izvēlieties Java Vanilla veidni no nolaižamā saraksta, ievadiet repozitorija nosaukumu un apakšdomēnu, un noklikšķiniet "Create Repository".

2

Klonēt savu repozitoriju

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

Būvēt projektu

mvn clean package
4

Palaist lietojumprogrammu

java -jar target/app.jar

Serveris pēc noklusējuma darbojas uz http://localhost:8080.

5

Augšupielādēt izmaiņas

git add .
git commit -m "Initial setup"
git push origin main
Katrs push uz Git automātiski izvieto jūsu lietojumprogrammu. Pārbaudiet moduļa darba URL savā vadības panelī, lai redzētu savu tiešsaistes vietni.

Lokālā izstrāde ar Docker

Ja jums nav lokāli instalēts Java vai Maven, varat izmantot Docker, lai būvētu un palaistu savu projektu.

Kas ir Docker?
Docker izveido izolētus konteinerus ar visu nepieciešamo programmatūru (Java, Maven), neinstalējot tos jūsu datorā.

Komandu izpilde ar Docker

# Būvēt projektu
docker run --rm -v $(pwd):/app -w /app maven:3-eclipse-temurin-21 mvn clean package

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

Projekta struktūra

├── src/
│   └── main/
│       └── java/
│           └── com/example/
│               ├── App.java              # Ieejas punkts un HTTP serveris
│               ├── handlers/             # Pieprasījumu apstrādātāji
│               └── models/               # Datu modeļi
├── pom.xml                               # Maven atkarības
└── Dockerfile                            # Docker konfigurācija
        

Bieži veicamie uzdevumi

HTTP apstrādātāja izveide

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

Datubāzes savienojums ar 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();

Noderīgas komandas

mvn clean package Būvēt projektu
java -jar target/app.jar Palaist lietojumprogrammu
mvn dependency:tree Parādīt atkarību koku

Problēmu novēršana

java.sql.SQLException: Access denied

Risinājums: Pārbaudiet, vai jūsu JDBC savienojuma URL, lietotājvārds un parole sakrīt ar vadības paneļa piekļuves datiem.

Port 8080 already in use

Risinājums: Mainiet portu savā App.java failā vai apturiet citu procesu, kas izmanto portu 8080.

ClassNotFoundException for JDBC driver

Risinājums: Pārliecinieties, ka MySQL JDBC draiveris ir iekļauts jūsu pom.xml atkarībās, un palaidiet mvn clean package vēlreiz.

Izvietošanas process

Koda izmaiņas git push mvn package Tiešsaistē!
Papildu informācijai apmeklējiet oficiālo Java dokumentāciju.