JSON을 Kotlin으로

JSON에서 kotlinx.serialization, Gson, Moshi, Jackson용 Kotlin data class 생성

JSON 입력

옵션

모델
속성 이름
null 허용 속성
직렬화
고급
클래스 배치

Kotlin 출력

JSON을 붙여넣거나 예제를 불러오면 Kotlin 코드를 생성합니다.

JSON을 Kotlin으로 변환하면 생성되는 것

JSON을 Kotlin으로 변환하는 이 도구는 API 응답이나 모든 JSON 샘플을 kotlinx.serialization, Gson, Moshi, Jackson용 또는 라이브러리 없는 Kotlin data class로 바꿉니다. user_name → userName처럼 속성 이름이 키와 다르면 선택한 라이브러리의 어노테이션(@SerialName, @SerializedName, @Json 또는 @JsonProperty)이 JSON에 다시 매핑합니다. class, object, when, fun 같은 키워드는 백틱으로 감싸며, 123abc나 user-name처럼 유효한 이름이 아닌 키는 이름 설정에 따라 매핑과 함께 이름을 바꾸거나 백틱으로 감싸 유지합니다.

사용 방법
  1. 1.JSON을 붙여넣거나, .json 파일을 업로드하거나 끌어다 놓거나, 예제 중 하나를 불러옵니다.
  2. 2.루트 타입 이름, 속성 이름 방식, null 허용 방식을 정합니다.
  3. 3.직렬화 라이브러리를 고르고, 모든 클래스에 인수 없는 생성자가 필요하면 기본값을 켭니다.
  4. 4.고급에서 패키지를 지정하거나 클래스를 루트 클래스 안에 중첩합니다.
  5. 5.출력 아래의 알림을 읽은 뒤 코드를 복사하거나 .kt 파일을 다운로드합니다.
타입 추론 방식
  • •첫 항목만이 아니라 배열의 모든 항목을 검사하며, 같은 배열 안의 객체는 병합됩니다.
  • •일부 객체에 없는 키는 선택 항목으로 T? = null이 되고, 가끔 null인 키는 T?가 됩니다. 두 경우는 구분되므로 {"id": 1, "name": "A"}와 {"id": 2}에서는 val name: String? = null이 생성됩니다.
  • •32비트에 들어가는 정수는 Int, 더 큰 정수는 Long, 64비트를 넘는 값은 BigInteger(kotlinx.serialization에서는 JsonPrimitive)가 됩니다. ±2^53을 넘는 값에는 JavaScript 클라이언트가 반올림할 수 있다는 알림이 붙습니다.
  • •같은 위치에 1과 2.5가 있으면 Double로 확장되고, 그 밖의 혼합은 알림으로 표시됩니다.
  • •타입 매핑: 문자열 → String, 소수 → Double, 불리언 → Boolean, 배열 → List<T>, 객체 → data class, 빈 객체 → class, 알 수 없음 또는 혼합 → Any?(kotlinx.serialization에서는 JsonElement?).
제한과 개인정보 보호

샘플은 한 시점의 데이터 모양일 뿐 전체 API 계약이 아닙니다. 코드를 사용하기 전에 선택 필드, 범용 타입, 숫자 범위를 확인하세요. 생성된 코드에는 serialization 컴파일러 플러그인, Moshi 코드 생성, jackson-module-kotlin 같은 라이브러리별 일반 설정이 필요합니다. Gson은 Kotlin 생성자를 거치지 않으므로 모든 속성에 기본값이 없으면 null이 아닌 속성에도 null이 들어갈 수 있습니다. 입력은 5 MB와 중첩 256단계로 제한되며, 2 MB부터는 생성 버튼을 눌러야 생성됩니다. 모든 처리는 브라우저에서 이루어지고 JSON은 업로드되지 않습니다.

CodingTool이 공식 출시되었습니다

Launched on StartupBaseCodingTool.dev - Free, Fast & Easy Developer Tools in One Place | Product HuntCodingTool - Featured on Startup FameFazier badgeListed on Turbo0Featured on Twelve ToolsFeatured on Findly.toolsLaunchpadly Startup DirectoryCodingTool.dev — Featured on Smol Launch