国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim Backend-Entwicklung Golang Wie speichere ich JSON-Daten in einer Datenbank in Golang?

Wie speichere ich JSON-Daten in einer Datenbank in Golang?

Jun 06, 2024 am 11:24 AM
json golang Datenbank

JSON-Daten k?nnen mithilfe der gjson-Bibliothek oder der json.Unmarshal-Funktion in einer MySQL-Datenbank gespeichert werden. Die gjson-Bibliothek bietet praktische Methoden zum Parsen von JSON-Feldern, und die Funktion json.Unmarshal erfordert einen Zieltypzeiger zum Unmarshalieren von JSON-Daten. Bei beiden Methoden müssen SQL-Anweisungen vorbereitet und Einfügevorg?nge ausgeführt werden, um die Daten in der Datenbank beizubehalten.

如何在 Golang 中將 JSON 數(shù)據(jù)保存到數(shù)據(jù)庫中?

So speichern Sie JSON-Daten in einer Datenbank in Golang

Einführung
In Golang ist das Speichern von JSON-Daten in einer Datenbank eine h?ufige Aufgabe. In diesem Artikel werden verschiedene Methoden zur Beibehaltung von JSON-Daten unter Verwendung h?ufig verwendeter Datenbanken wie MySQL untersucht und praktische Beispiele als Referenz bereitgestellt.

Verwendung der GJSON-Bibliothek
Die GJSON-Bibliothek ist ein beliebtes Golang-Paket zum Parsen und Bearbeiten von JSON-Daten. Es bietet einfache Methoden zum Parsen von JSON-Daten in Go-Datenstrukturen wie Karten und Slices.

package main

import (
    "database/sql"
    "encoding/json"
    "fmt"
    _ "github.com/go-sql-driver/mysql"
    "github.com/tidwall/gjson"
)

func main() {
    db, err := sql.Open("mysql", "user:password@tcp(localhost:3306)/database")
    if err != nil {
        panic(err)
    }
    defer db.Close()

    jsonData := `{
        "name": "John Doe",
        "age": 30,
        "address": {
            "street": "Main Street",
            "city": "New York"
        }
    }`

    values := []interface{}{}

    // 解析 JSON 字段
    name := gjson.Get(jsonData, "name").String()
    age := gjson.Get(jsonData, "age").Int()
    address := gjson.Get(jsonData, "address").String()

    values = append(values, name, age, address)

    // 準備 SQL 語句
    stmt, err := db.Prepare("INSERT INTO users (name, age, address) VALUES (?, ?, ?)")
    if err != nil {
        panic(err)
    }

    // 執(zhí)行插入操作
    _, err = stmt.Exec(values...)
    if err != nil {
        panic(err)
    }

    fmt.Println("JSON data saved to database successfully")
}

Verwendung von json.Unmarshal
Die Funktion json.Unmarshal ist Teil der Golang-Standardbibliothek und wird zum Unmarshalieren von JSON-Daten in Go-Variablen verwendet. Diese Methode erfordert einen Zieltypzeiger als zweiten Parameter.

package main

import (
    "database/sql"
    "encoding/json"
    "fmt"
    _ "github.com/go-sql-driver/mysql"
)

func main() {
    db, err := sql.Open("mysql", "user:password@tcp(localhost:3306)/database")
    if err != nil {
        panic(err)
    }
    defer db.Close()

    jsonData := `{
        "name": "John Doe",
        "age": 30,
        "address": {
            "street": "Main Street",
            "city": "New York"
        }
    }`

    var user struct {
        Name     string
        Age      int
        Address  string
    }

    err = json.Unmarshal([]byte(jsonData), &user)
    if err != nil {
        panic(err)
    }

    // 準備 SQL 語句
    stmt, err := db.Prepare("INSERT INTO users (name, age, address) VALUES (?, ?, ?)")
    if err != nil {
        panic(err)
    }

    // 執(zhí)行插入操作
    _, err = stmt.Exec(user.Name, user.Age, user.Address)
    if err != nil {
        panic(err)
    }

    fmt.Println("JSON data saved to database successfully")
}

Das obige ist der detaillierte Inhalt vonWie speichere ich JSON-Daten in einer Datenbank in Golang?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erkl?rung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Golang und C: Parallelit?t gegen Rohgeschwindigkeit Golang und C: Parallelit?t gegen Rohgeschwindigkeit Apr 21, 2025 am 12:16 AM

Golang ist in Gleichzeitigkeit besser als C, w?hrend C bei Rohgeschwindigkeit besser als Golang ist. 1) Golang erreicht durch Goroutine und Kanal eine effiziente Parallelit?t, die zum Umgang mit einer gro?en Anzahl von gleichzeitigen Aufgaben geeignet ist. 2) C über Compiler -Optimierung und Standardbibliothek bietet es eine hohe Leistung in der N?he der Hardware, die für Anwendungen geeignet ist, die eine extreme Optimierung erfordern.

Orakels Rolle in der Gesch?ftswelt Orakels Rolle in der Gesch?ftswelt Apr 23, 2025 am 12:01 AM

Oracle ist nicht nur ein Datenbankunternehmen, sondern auch ein führender Anbieter von Cloud -Computing- und ERP -Systemen. 1. Oracle bietet umfassende L?sungen von der Datenbank bis zu Cloud -Diensten und ERP -Systemen. 2. Oraclecloud fordert AWS und Azure heraus und liefert IaaS-, PaaS- und SaaS -Dienste. 3. ERP-Systeme von Oracle wie E-Businesssuite und Fusion Applications helfen Unternehmen dabei, den Betrieb zu optimieren.

Golang gegen Python: Die Vor- und Nachteile Golang gegen Python: Die Vor- und Nachteile Apr 21, 2025 am 12:17 AM

GolangissidealforbuildingsCalablesSystemduetoitseffizienz und Konsumverkehr, whilepythonexcelsinquickScriptingandDataanalyseduetoitssimplication und VacevastEcosystem.golangsDesineScouragesCouragescournations, tadelcodedeanDitsGoroutaTinoutgoroutaTinoutgoroutaTinoutsGoroutinesGoroutinesGoroutsGoroutins, t

Redis: Verst?ndnis seiner Architektur und des Zwecks Redis: Verst?ndnis seiner Architektur und des Zwecks Apr 26, 2025 am 12:11 AM

Redis ist ein Speichersystem für Speicherdatenstruktur, das haupts?chlich als Datenbank, Cache und Message Broker verwendet wird. Zu den Kernmerkmalen geh?ren ein Einzel-Thread-Modell, E/A-Multiplexing, Persistenzmechanismus, Replikations- und Clustering-Funktionen. Redis wird üblicherweise in praktischen Anwendungen für Caching-, Sitzungsspeicher- und Nachrichtenwarteschlangen verwendet. Es kann seine Leistung erheblich verbessern, indem die richtige Datenstruktur ausgew?hlt, Pipelines und Transaktionen verwendet und überwacht und stimmt.

MongoDBs Zukunft: Der Zustand der Datenbank MongoDBs Zukunft: Der Zustand der Datenbank Apr 25, 2025 am 12:21 AM

Die Zukunft von MongoDB ist voller M?glichkeiten: 1. Die Entwicklung von Cloud-nativen Datenbanken, 2. Die Bereiche der künstlichen Intelligenz und der Big Data sind fokussiert. Die Verbesserung der Sicherheit und der Einhaltung. MongoDB f?hrt weiter voran und führt durch Durchbrüche in technologischen Innovationen, Marktpositionen und zukünftiger Entwicklungsrichtung.

Redis: Ein Vergleich mit herk?mmlichen Datenbankservern Redis: Ein Vergleich mit herk?mmlichen Datenbankservern May 07, 2025 am 12:09 AM

Redis ist traditionellen Datenbanken in hoher Parallelit?ts- und Latenz -Szenarien überlegen, ist jedoch nicht für komplexe Abfragen und Transaktionsverarbeitung geeignet. 1.Redis verwendet Speicherspeicher-, Schnelllese- und Schreibgeschwindigkeit, geeignet für Anforderungen an eine hohe Parallelit?t und niedrige Latenz. 2. Traditionelle Datenbanken basieren auf Festplatten, unterstützen komplexe Abfragen und Transaktionsverarbeitung und haben eine starke Datenkonsistenz und -dauer. 3.. Redis ist als Erg?nzung oder Ersatz für herk?mmliche Datenbanken geeignet, muss jedoch nach bestimmten Gesch?ftsbedürfnissen ausgew?hlt werden.

Navicat: Community Edition gegen kommerzielle Versionen Navicat: Community Edition gegen kommerzielle Versionen Apr 22, 2025 am 12:01 AM

Der Hauptunterschied zwischen Navicats Communityedition und Commercialversionen sind die Funktionen und Nutzungsszenarien. CommunityEdition bietet grundlegende Datenbankverwaltungsfunktionen, die für Grundbedürfnisse geeignet sind. Commercialversionen umfassen fortschrittliche Funktionen wie Datenmodelldesign- und Automatisierungsaufgaben, die für professionelle Bedürfnisse geeignet sind.

JSON vs. XML: Warum RSS XML ausgew?hlt hat JSON vs. XML: Warum RSS XML ausgew?hlt hat May 05, 2025 am 12:01 AM

RSS w?hlte XML anstelle von JSON aus, weil: 1) die Struktur- und überprüfungsfunktionen von XML besser sind als JSON, was für die Bedürfnisse von RSS -komplexen Datenstrukturen geeignet ist. 2) XML wurde zu dieser Zeit ausführlich unterstützt; 3) Die frühen Versionen von RSS basierten auf XML und sind zu einem Standard geworden.

See all articles