JSON → 클래스 변환

API 응답 JSON을 붙여 넣으면 TypeScript·Java·Kotlin·C#·Dart·PHP 타입 정의를 만들어 줍니다. 배열 안의 모든 원소를 훑어 항목을 모으므로, 일부에만 있는 항목이 빠지지 않습니다.

설정

JSON

결과

변환은 브라우저 안에서만 이루어지며 붙여 넣은 데이터를 서버로 보내지 않습니다.

JSON → 클래스 변환은 API 응답을 붙여 넣으면 TypeScript·Java·Kotlin·C#·Dart·PHP 의 타입 정의를 만들어 줍니다. 손으로 옮기다 생기는 오타와 누락을 없애는 것이 목적입니다. 배열 안의 모든 원소를 훑어 항목을 모으므로, 일부 원소에만 있는 항목이 빠지지 않습니다.

JSON→클래스 사용 방법

  1. JSON 을 왼쪽에 붙여 넣습니다. 오른쪽에 코드가 바로 나옵니다.
  2. 언어를 고릅니다. 같은 JSON 을 여러 언어로 볼 수 있습니다.
  3. 최상위 이름을 원하는 클래스 이름으로 바꿉니다.
  4. 복사해서 프로젝트에 붙여 넣습니다.

지원 형식과 입력 조건

언어
TypeScript(interface) · Java(Jackson) · Kotlin(data class + Gson) · C#(System.Text.Json) · Dart · PHP 8
중첩
객체 안의 객체를 별도 클래스로 만들고 이름을 단수형으로 바꿉니다(orders → Order)
선택 항목
배열 원소 일부에만 있는 항목은 선택 항목으로 표시합니다
처리 위치
브라우저 안에서만 처리하며 데이터를 서버로 보내지 않습니다

첫 원소만 보면 안 되는 이유

  • API 응답의 배열은 원소마다 항목이 다를 수 있습니다. 메모가 있는 주문과 없는 주문이 섞이는 식입니다.
  • 첫 원소만 보고 타입을 만들면 나머지에만 있는 항목이 통째로 빠져, 실제로 값이 오는데 코드에서는 없는 것처럼 다루게 됩니다.
  • 이 도구는 모든 원소를 훑어 항목을 모으고, 일부에만 있으면 선택 항목(?)으로 표시합니다.
  • 값의 타입이 원소마다 다르면(어떤 것은 정수, 어떤 것은 실수) 더 넓은 쪽으로 잡습니다.

null 값은 그대로 두지 않습니다

  • 값이 null 이면 그 항목의 실제 타입을 알 수 없습니다. 문자열일 수도 숫자일 수도 있습니다.
  • 그래서 임의로 문자열이라고 정하지 않고 "알 수 없음"(TypeScript 의 unknown 등)으로 표시하고 그 사실을 알려 줍니다.
  • 다른 원소에 실제 값이 있으면 그 타입을 쓰되 null 이 올 수 있다고 표시합니다.
  • 실제 타입을 아신다면 만들어진 코드에서 직접 고쳐 쓰세요.

자주 묻는 질문

데이터가 서버로 전송되나요?

전송되지 않습니다. 브라우저 안에서만 변환합니다. 운영 API 응답을 붙여 넣어도 밖으로 나가지 않습니다.

날짜 문자열을 날짜 타입으로 만들어 주나요?

ISO 형식(2026-08-12T09:00:00Z)이면 Java·C#·Dart 에서 날짜 타입으로 잡습니다. TypeScript 는 JSON 에서 날짜가 문자열이므로 string 으로 둡니다.

만든 코드를 그대로 써도 되나요?

이름 규칙이나 어노테이션은 프로젝트 관례에 맞게 다듬어 쓰세요. 구조와 타입을 옮기는 수고를 덜어 주는 것이 목적입니다.