[go] JSON 데이터 유형 변환하기

JSON(JavaScript Object Notation)은 데이터를 저장하고 전송하는 데 널리 사용되는 형식입니다. Golang에서는 JSON 데이터를 사용하고 다룰 때 변환 작업이 필요할 수 있습니다. 이 기술 블로그에서는 Golang에서 JSON 데이터를 다른 유형으로 변환하는 방법에 대해 살펴보겠습니다.

1. JSON에서 구조체(Struct)로 변환

Golang에서 JSON 데이터를 구조체로 변환하는 작업은 매우 흔합니다. 이를 위해 JSON 데이터의 키와 구조체 필드 이름이 일치해야 합니다.

예를 들어, 다음과 같이 JSON 데이터가 있다고 가정해봅시다.

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

jsonData := []byte(`{"name":"Alice","age":25}`)
var person Person
json.Unmarshal(jsonData, &person)

위 예제에서 json.Unmarshal 함수를 사용하여 JSON 데이터를 구조체로 변환했습니다.

2. 구조체에서 JSON으로 변환

구조체를 JSON 데이터로 다시 변환하는 것도 가능합니다. Golang의 json.Marshal 함수를 사용하여 구조체를 JSON 데이터로 변환할 수 있습니다.

person := Person{Name: "Bob", Age: 30}
jsonData, err := json.Marshal(person)

위 예제에서는 json.Marshal 함수를 사용하여 구조체를 JSON 데이터로 다시 변환했습니다.

3. 인터페이스로 변환

Golang의 인터페이스를 사용하여 JSON 데이터를 다양한 유형으로 변환할 수 있습니다.

var data interface{}
json.Unmarshal(jsonData, &data)

위 예제에서는 interface{}를 사용하여 JSON 데이터를 인터페이스로 변환했습니다.

마무리

Golang에서 JSON 데이터를 다른 유형으로 변환하는 방법에 대해 간략하게 살펴보았습니다. 이러한 변환 작업을 통해 데이터를 쉽게 다룰 수 있으며, 웹 애플리케이션과 RESTful API를 개발하는 데 유용하게 활용할 수 있습니다.

관련 자료:

기존의 JSON 데이터를 유용한 형식으로 변환하는 과정에서 Golang의 강력한 기능들을 활용할 수 있습니다. JSON 데이터를 다루는데 필요한 Golang의 도구들을 제대로 활용하면 데이터 처리 작업을 효율적으로 수행할 수 있습니다.