Sobes.tech
Junior — Middle

Hoe communiceert de microservice met de database voor het opslaan en ophalen van gegevens?

sobes.tech AI

Antwoord van AI

Een microservice in Go communiceert met de database via drivers of ORM-bibliotheken die een interface implementeren voor verbinding maken, queries uitvoeren en resultaten verwerken.

Belangrijkste stappen:

  1. Maak verbinding met de database met behulp van een pakket, bijvoorbeeld database/sql en de bijbehorende driver (bijvoorbeeld pq voor PostgreSQL).
  2. Voer SQL-query's uit om gegevens in te voegen, bij te werken, te verwijderen of op te halen.
  3. Verwerk de resultaten van de query's en zet ze om in de benodigde datastructuren.

Voorbeeld van verbinding maken en ophalen uit PostgreSQL:

import (
    "database/sql"
    _ "github.com/lib/pq"
    "log"
)

func getUserByID(db *sql.DB, id int) (string, error) {
    var name string
    err := db.QueryRow("SELECT name FROM users WHERE id = $1", id).Scan(&name)
    if err != nil {
        return "", err
    }
    return name, nil
}

func main() {
    connStr := "user=username dbname=mydb sslmode=disable"
    db, err := sql.Open("postgres", connStr)
    if err != nil {
        log.Fatal(err)
    }
    defer db.Close()

    name, err := getUserByID(db, 1)
    if err != nil {
        log.Println("Fout bij het ophalen van gebruiker:", err)
    } else {
        log.Println("Gebruikersnaam:", name)
    }
}

Op deze manier gebruikt de microservice standaardbibliotheken en drivers om te communiceren met de database.