JSON to Kotlin 데이터 클래스 변환기
JSON 객체를 타입이 지정된 프로퍼티가 포함된 Kotlin 데이터 클래스로 브라우저에서 변환합니다.
사용법
- 입력 상자에 JSON을 붙여넣거나 입력합니다.
- 필요하면 루트 클래스 이름을 변경합니다(기본값 AutoGenerated).
- 출력 상자에서 생성된 데이터 클래스를 복사합니다.
- API가 생략할 수 있는 프로퍼티에는 물음표를 붙이세요. 표본 하나로는 어떤 필드가 선택적인지 알 수 없습니다.
자세한 설명
펼치기접기
JSON 객체나 배열을 붙여넣으면 타입이 지정된 val 프로퍼티를 가진 Kotlin data class 정의와, 값을 담고 있던 키의 이름을 딴 중첩 객체용 별도 클래스를 바로 얻을 수 있습니다. 정수는 Long, 소수는 Double이 되는데, 큰 ID나 타임스탬프가 Int를 넘치지 않도록 일부러 넉넉하게 잡은 기본값입니다. JSON null은 Any?가 됩니다. 표본 하나로는 어떤 타입이 와야 하는지 알 수 없기 때문이며, 빈 배열은 List<Any>가 됩니다. 구조를 문서 하나에서 추론하므로 직접 손봐야 할 부분은 널 허용 여부입니다. 표본에 우연히 들어 있었을 뿐인 필드도 널이 아닌 타입으로 생성되니, API가 생략할 수 있는 자리에는 물음표를 붙이세요. 모든 처리는 브라우저에서 이루어지며 JSON은 업로드되지 않습니다.
자주 묻는 질문
숫자는 어떤 타입이 되나요?
정수는 Long, 소수점이 있는 숫자는 Double로 변환됩니다. 더 좁은 타입을 원하면 Int나 Float로 직접 변경하세요.
null이나 빈 배열은 어떻게 처리되나요?
샘플로 타입을 추론할 수 없으므로 null은 nullable Any?로, 빈 배열은 List<Any>로 변환됩니다.
중첩 객체는 어떻게 처리되나요?
각 중첩 객체는 자체 data class가 됩니다. data class는 최소 한 개의 프로퍼티가 필요하므로 빈 객체는 일반 class가 됩니다.
제 JSON이 어딘가로 전송되나요?
아니요. 변환은 전적으로 브라우저에서 이루어지며 아무것도 업로드되지 않습니다.
어떤 필드를 널 허용으로 바꿔야 하나요?
API가 생략하거나 null로 보낼 수 있는 필드 전부입니다. 표본만으로는 그것이 어느 것인지 알 수 없습니다. 물음표를 붙이면 기본값도 줄 수 있어서, 서버가 어떤 필드를 빼기 시작해도 예전 클라이언트가 계속 동작합니다.
이 데이터 클래스를 kotlinx.serialization과 함께 쓸 수 있나요?
@Serializable 애너테이션과 플러그인을 추가하면 됩니다. JSON 키가 코틀린 이름으로 유효하지 않거나 전송상의 표기 대신 카멜 케이스 프로퍼티를 쓰고 싶다면, 이름을 바꿔 매핑을 깨뜨리지 말고 프로퍼티에 @SerialName을 붙이세요.
관련 도구
JSON to Java 클래스(POJO) 변환기
JSON 객체를 타입이 매핑된 필드가 포함된 Java POJO 클래스로 브라우저에서 변환합니다.
개발
JSON to C# 클래스 변환기
JSON 객체를 자동 프로퍼티 타입 매핑이 적용된 C# 클래스로 브라우저에서 변환합니다.
개발
Mock 데이터 생성기
테스트용 가짜 레코드를 만들어 JSON·CSV·SQL INSERT로 내보내기 — 이름·이메일·날짜·ID·로렘 등 20+ 타입.
개발
CSV ↔ JSON 변환기
CSV를 JSON으로, JSON을 CSV로 변환하세요(구분자 선택 가능).
파일
CSV → HTML / Markdown / JSON 테이블
CSV를 HTML <table>·마크다운 테이블·JSON 객체 배열로 변환 — 구분자 자동 감지.
변환
HTML → JSX 변환
HTML 스니펫 붙여넣기 → React용 JSX. class→className·onclick→onClick·void 태그 self-close·inline style 객체화 옵션.
개발