Express + DB
- Node.js kursu
- İleri seviye
- Ders 80/83
- 6 dk
Express API ve veritabanı katmanını kurarsın.
Express + DB
Bu derste tasarım iskeletine veritabanı bağlantısı ekleyeceğiz. Basit bir db nesnesi tanımlayıp Express rotasına bağlayacağız. Gerçek projede bu bir ORM veya sürücü olur.
Örnek: const db = { hazir: true }; app.get("/db", (req, res) => res.json({ db: db.hazir }));. Bu, basit bir veritabanı bağlantısı taklididir. Üretimde db gerçek bir veritabanı sürücüsü olur (MongoDB, PostgreSQL). İskelette amaç, veritabanının app'e nasıl bağlandığını göstermektir. Express rotaları, req ve res ile veritabanına erişir. Veritabanı kodu, route handler'lar içinde çağrılır.
Veritabanı route'a bağlama
Veritabanı, Express rotalarının içinde kullanılır. Bir /db rotası, veritabanı durumunu JSON olarak döndürür. Bu desen, gerçek uygulamalarda veri sorgulama için kullanılır.
Örnek: app.get("/db", (req, res) => { const sonuc = db.sorgu("SELECT * FROM users"); res.json({ veri: sonuc }); });. Burada db.sorgu veritabanına bir sorgu atar; sonuç JSON olarak döndürülür. Üretimde sorgu asenkron olur: const sonuc = await db.query(...). Express route handler'ları async olabilir. Veritabanı bağlantısı genellikle uygulama başlarken kurulur ve tüm rotalar bunu paylaşır. Bu, performansı artırır.
Uygulama DB bağlantısını ekle
Aşağıdaki iskelete const db = { hazir: true } satırını ve app.get("/db", (req, res) => res.json({ db: db.hazir })) rotasını ekle. console.log ile "DB hazır" yaz.
Başlangıç kodu
const express = require("express");
const app = express();
app.get("/", (req, res) => res.json({ durum: "ok" }));
// buraya db ekle
// buraya yaz
// "DB hazır" yazdır
// buraya yazÖrnek çözüm
const express = require("express");
const app = express();
app.get("/", (req, res) => res.json({ durum: "ok" }));
const db = { ready: true };
app.get("/db", (req, res) => res.json({ db: db.ready }));
console.log("DB hazır");Beklenen çıktı
DB hazır
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 db nesnesi satırını tamamla
const db = { ____: true };
const db = { hazır: true };
Açıklama: db.hazir ile veritabanı durumu alınır.
2 Parçayı rolüne eşle
| Kavram | Anlamı |
|---|---|
express |
API çerçevesi |
db |
Veritabanı |
app.get |
Rota tanımlar |
res.json |
JSON yanıtı |
3 Veritabanı route'a nasıl bağlanır?
app.get("/db", (req, res) => res.json(...))- app.listen ile
- Route handler içinde db kullanarak Doğru cevap
- require ile
- console.log ile
Açıklama: Veritabanı route handler içinde kullanılır.