Go + GORM으로 백엔드 개발을 하다 보면 다음과 같은 고민, 한 번쯤 해봤을 것이다. - Struct 안에 JSON 배열을 저장하고 싶은데 어떻게 하지? - Enum 타입처럼 제한된 값만 저장하고 싶은데? - time.Time 포맷이 DB랑 안 맞아서 깨져서 나온다? 이럴 때 유용하게 쓰이는 게 GORM의 Custom Type 기능이다. 이 글에서는 JSON 필드, Enum 처리, 커스텀 Time 포맷을 예제로 하나씩 정리해보려 한다. 1. JSON 필드 매핑하기 — Slice나 Map을 JSON으로 저장하기 Go에서는 []string, map[string]string 같은 필드를 DB의 JSON 컬럼에 저장하려면 Scan()과 Value() 메서드를 직접 구현해줘야 한다. ✅ 예제: ..