Node.js + JS + Express – MYSQL
Spis Treści
- Instalacja Niezbędnych Pakietów
- Konfiguracja Bazy Danych MySQL
- Tworzenie Serwera Express.js
- Tworzenie Interfejsu Użytkownika (HTML)
- Uruchomienie Aplikacji
- Dodatkowe Uwagi
1. Instalacja Niezbędnych Pakietów
Aby rozpocząć tworzenie aplikacji, upewnij się, że masz zainstalowany Node.js oraz npm (Node Package Manager). Node.js jest środowiskiem uruchomieniowym, które pozwala na korzystanie z JavaScript poza przeglądarką, natomiast npm umożliwia zarządzanie pakietami. Jeśli jeszcze nie masz Node.js, pobierz go ze strony nodejs.org.
Po instalacji Node.js i npm, utwórz nowy katalog projektu i zainicjuj go, wykonując poniższe polecenia:
mkdir my-express-mysql-app
cd my-express-mysql-app
npm init -y
Powyższe komendy utworzą katalog projektu i zainicjują plik package.json, który będzie zawierał informacje o projekcie i zależnościach.
Zainstaluj wymagane pakiety:
npm install express mysql cors
Powyższa komenda instaluje trzy pakiety:
express: framework do tworzenia serwera aplikacjimysql: pakiet do komunikacji z bazą danych MySQLcors: middleware do obsługi CORS (Cross-Origin Resource Sharing), który umożliwia dostęp do serwera z innych domen
Opcjonalnie możesz zainstalować nodemon, aby automatycznie restartował serwer przy każdej zmianie w kodzie:
npm install --save-dev nodemon
W package.json możesz dodać skrypt do uruchamiania serwera z nodemon:
"scripts": {
"start": "node server.js",
"dev": "nodemon server.js"
}
2. Konfiguracja Bazy Danych MySQL
Stwórz bazę danych w MySQL, która będzie przechowywać dane o przedmiotach w naszym magazynie. Załóżmy, że chcemy przechowywać przedmioty z polami: id, name, quantity, price.
Otwórz terminal MySQL i wykonaj poniższe komendy, aby stworzyć bazę danych i tabelę:
CREATE DATABASE inventory_db;
USE inventory_db;
CREATE TABLE items (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
quantity INT NOT NULL,
price DECIMAL(10,2) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Stworzyliśmy tabelę items z czterema kolumnami:
id: unikalny identyfikator przedmiotu (klucz główny)name: nazwa przedmiotuquantity: ilość przedmiotu w magazynieprice: cena przedmiotucreated_at: data i czas dodania przedmiotu
3. Tworzenie Serwera Express.js
Teraz utworzymy serwer aplikacji, który pozwoli na interakcję z naszą bazą danych. Stwórz plik server.js w katalogu projektu i dodaj poniższy kod:
// server.js
const express = require('express');
const mysql = require('mysql');
const cors = require('cors');
const app = express();
app.use(cors());
app.use(express.json());
// Konfiguracja MySQL
const db = mysql.createConnection({
host: 'localhost',
user: 'your_username',
password: 'your_password',
database: 'inventory_db'
});
db.connect((err) => {
if (err) {
console.error('Błąd połączenia z MySQL:', err);
return;
}
console.log('Połączono z bazą danych MySQL');
});
// API endpoints (POST, GET, PUT, DELETE) tutaj...
W powyższym kodzie importujemy potrzebne moduły (express, mysql, cors) i konfigurujemy połączenie z bazą danych MySQL. Serwer obsługuje JSON w treści żądań i umożliwia komunikację z front-endem (dzięki middleware cors()).
4. Tworzenie Interfejsu Użytkownika (HTML)
Tworzymy prosty interfejs użytkownika, który pozwoli na zarządzanie przedmiotami w magazynie. Utwórz folder public i dodaj plik index.html z poniższym kodem:
Inventory Management
ID
Nazwa
Ilość
Cena
Akcje