[go] Go 언어에서 JSON 패키지 사용하기

Go 언어에서는 JSON 데이터를 다루기 위한 내장 패키지가 제공됩니다. 이 패키지를 사용하여 JSON 데이터를 생성하고 파싱할 수 있습니다. 이번 포스트에서는 Go 언어에서 JSON 패키지를 어떻게 사용하는지 살펴보겠습니다.

  1. JSON 패키지 소개
  2. JSON 데이터 생성
  3. JSON 데이터 파싱

JSON 패키지 소개

Go 언어의 표준 라이브러리에는 encoding/json 패키지가 포함되어 있습니다. 이 패키지를 사용하여 JSON 데이터를 다룰 수 있습니다.

JSON 데이터 생성

JSON 데이터를 생성하기 위해서는 Go의 구조체(Struct)를 활용할 수 있습니다. 아래의 예시는 구조체를 활용하여 JSON 데이터를 생성하는 방법을 보여줍니다.

package main

import (
	"encoding/json"
	"fmt"
)

type Person struct {
	Name string `json:"name"`
	Age  int    `json:"age"`
}

func main() {
	person := Person{Name: "Alice", Age: 30}
	jsonData, _ := json.Marshal(person)
	fmt.Println(string(jsonData))
}

위의 예제에서는 Person이라는 구조체를 활용하여 JSON 데이터를 생성하고 있습니다.

JSON 데이터 파싱

JSON 데이터를 파싱하여 Go의 구조체로 변환하기 위해서는 json.Unmarshal 함수를 사용할 수 있습니다. 아래의 예시는 JSON 데이터를 파싱하여 구조체로 변환하는 방법을 보여줍니다.

package main

import (
	"encoding/json"
	"fmt"
)

type Person struct {
	Name string `json:"name"`
	Age  int    `json:"age"`
}

func main() {
	jsonData := []byte(`{"name":"Bob","age":25}`)
	var person Person
	json.Unmarshal(jsonData, &person)
	fmt.Println(person)
}

위의 예제에서는 json.Unmarshal 함수를 사용하여 JSON 데이터를 파싱하고, 그 결과를 구조체로 변환하고 있습니다.

이렇게 Go 언어에서는 encoding/json 패키지를 사용하여 간단하게 JSON 데이터를 생성하고 파싱할 수 있습니다. 이를 활용하여 웹 애플리케이션 등에서 JSON 데이터를 다루는데 활용할 수 있습니다.

더 많은 정보는 공식 Go 언어 문서에서 확인할 수 있습니다.